首先下载Delphi-OpenCV

下载地址:GitHub - Laex/Delphi-OpenCV: Project Delphi-OpenCV. Translation of OpenCV library header files in Delphi

国际惯例先上代码

program CompareImage;
{$APPTYPE CONSOLE}{$R *.res}usesSystem.SysUtils,ocv.core.types_c in 'ocv.core.types_c.pas',ocv.core_c in 'ocv.core_c.pas',ocv.highgui_c in 'ocv.highgui_c.pas';ConstfilenameL = 'l.bmp';filenameR = 'r.bmp';VarimageL:pIplImage = nil;imageR:pIplImage = nil;imageDiff:pIplImage = nil;begintryimageL := cvLoadImage(filenameL, 1); //-1 默认读取图像的原通道数 ,0 强制转化读取图像为灰度图 ,1读取彩色图imageR := cvLoadImage(filenameR, 1);if Assigned(imageL) and Assigned(imageR) thenbegincvNamedWindow('imageL', CV_WINDOW_AUTOSIZE);cvShowImage('imageL', imageL);cvNamedWindow('imageR', CV_WINDOW_AUTOSIZE);cvShowImage('imageR', imageR);imageDiff:= cvCreateImage(cvGetSize(imageL),imageL.depth,imageL.nChannels);if Assigned(imageDiff) thenbegincvAbsDiff(imageL,imageR,imageDiff);cvNamedWindow('imageDiff', CV_WINDOW_AUTOSIZE);cvShowImage('imageDiff', imageDiff);end;cvWaitKey();cvDestroyWindow('imageL');cvDestroyWindow('imageR');cvDestroyWindow('imageDiff');cvReleaseImage(imageL);cvReleaseImage(imageR);cvReleaseImage(imageDiff);Readln;end;Readln;excepton E: Exception doWriteLn(E.ClassName, ': ', E.Message);end;
end.

大家一起来找茬对比效果:

说实话,这玩意功能是真的很强大,之前我在2009年就写过一个基于像素RGB对比的Delphi版大家来找茬的辅助,一直可以使用,一直到2016年底失效了,原因就是2016年QQ游戏更新增加了反作弊处理,左右两幅图片进行了增加躁点,图像背景干扰等差异化处理,导致程序无法进行RGB像素扫描处理这些图片,包括连灰阶处理,二值化都成问题,今天一试这opencv居然秒搞定。真是彪悍!

之前的辅助效果图:

现在用像素对比的话,是全红的。即所有的点都不匹配,如果转灰度图(左下)或二值化(右下),是如下效果(只能操作一部分,很是奇怪)

这根本不符合逻辑,同样的代码转其它的图片正常的很

用的也是国际通用公式计算:
灰度化过程还是依照大多数图像灰度处理惯例,计算YUV颜色空间的Y分量作为灰度图,
公式为:Y = 0.299 * R + 0.587 * G + 0.114 * B

不知道是什么原因。没去细查。

以后会多研究一下opencv,毕竟在人脸识别,图像分析对比,物品识别,运动图像捕捉,人工智能,视频预警监控等众多领域opencv都表现的足够优秀。而且使用又是如此简单。

Delphi中小试Opencv--图像差异对比(大家来找茬辅助实现cvAbsDiff函数的使用)相关推荐

  1. android 字符串相似度对比,Android中的OpenCV图像比较和相似度

    Andrii Omelc.. 7 但是我们可以看到两个图像都具有相同的视觉元素(in). 因此,我们应该比较不是整个图像,而是"相同的视觉元素".Match如果不比较"模 ...

  2. “图片差异检查”辅助工具(即“大家来找茬”辅助工具)源码分享

    忽然心血来潮,想写一个辅助工具,让朋友们在"大家来找茬"之类的游戏中可以少费一些眼睛. 在Java方面我是新手,在折腾了一段时间后,终于还是写出了一个基本可用的测试版程序.详细的使 ...

  3. 基于OpenCV与MFC的大家来找茬外挂[升级版]

    上次编写的大家来找茬外挂虽然是实现了查找不同区域并把不同的区域显示在屏幕上,但是得手动点击,显得很是麻烦,所以最近把程序又改了一改,实现了自动点击功能. 程序的编写流程: 1.做一幅游戏窗口背景图片S ...

  4. 在Qt界面中显示OpenCV图像

    OpenCV中的图像主要存储在Mat类中,要让其显示在Qt的Label控件上,必须先将其转换为Qt的QImage类. Mat类图像是按照BGR顺序存储的图像,而QImage是按照RGB顺序存储的,在类 ...

  5. OpenCV图像缩放resize各种插值方式的比较

    OpenCV图像缩放resize各种插值方式的比较 目录 OpenCV图像缩放resize各种插值方式的比较 1. resize函数说明 2.各种插值方式的比较 2.1 INTER_NEAREST(最 ...

  6. opencv 图像读写显示、matplotlib 库图像读写显示

    图片格式: bmp 全称:Bitmap 不压缩 png 全称:Portable Network Graphics 无损压缩 jpg 全称:Joint Photographic Experts Grou ...

  7. matplotlib显示opencv图像有色差

    OpenCV中的图像是以BGR的通道顺序存储的,但Matplotlib是以RGB模式显示的,所以直接在Matplotlib中显示OpenCV图像会出现问题,因此需要转换一下: import cv2 i ...

  8. OpenCV 图像轮廓检测

    本文是OpenCV图像视觉入门之路的第15篇文章,本文详细的介绍了图像轮廓检测的各种操作,例如:轮廓检索模式.轮廓逼近算子等操作. 图像轮廓是具有相同颜色或灰度的连续点的曲线,轮廓在形状分析和物体的检 ...

  9. OpenCV图像处理——对比两张图像差异的位置并标记

    前言 1.有一个小游戏,就给出两张内容几乎差不多全部相同的图像,让大家在最快的时间内找出两个图像中有几处不同地方,我这里试着用OpenCV实现这个功能. 2.我的编程环境是Windows 10 64位 ...

  10. opencv 叠加两张图_「干货」教你如何用OpenCV快速寻找图像差异处

    如何使用结构相似性指数(SSIM)将两个图像与Python进行比较. 使用这种方法,我们能够轻松确定两个图像是否相同或由于轻微的图像处理,压缩伪像或有目的的篡改而产生差异. 今天我们将扩展SSIM方法 ...

最新文章

  1. springboot中文文档_登顶 Github 的 Spring Boot 仓库!艿艿写的最肝系列
  2. AI产品经理必修——揭开算法的面纱(余弦定理)
  3. 使用Bootstrap-table创建表单,并且与flask后台进行数据交互
  4. 2015年《大数据》读者意见调查问卷
  5. 入门机却拥有旗舰级音质体验 Redmi红米8系列音频信息曝光
  6. Spark Structured SQL:row_number Non-time-based windows are not supported on streaming DataFrames
  7. php全选删除,php+ajax简单实现全选删除的方法
  8. Ubuntu 20.04 更新,界面美化及安装搜狗输入法
  9. login.html错误,创建好login.html文件后,在git bash执行webpack出现错误
  10. 关于一些java命令作用
  11. Detours学习之一:概述
  12. 微信小程序-tab切换(scroll-view + swiper)
  13. Java 将控制台输出打印 输出到本地文件
  14. 虚拟机关机出现shutting down... running guests on default URT
  15. OSChina 周五乱弹 ——程序员会喜欢的 12 款键盘
  16. 基于pwntools和seccomp-tools的awd pwn通防小工具
  17. CFileDialog使用总结
  18. C语言----- 4/π=1-1/3+1/5-1/7+...,编程计算π的近似值,直到最后一项的值小于10-4次方为止 //输出π的值,并统计累加的项数
  19. 计算机毕业设计ssm面向智慧课堂的教学过程管理系统evi14系统+程序+源码+lw+远程部署
  20. 关于GO+的七个案列分析

热门文章

  1. 传感器:HC-SR04超声波传感器原理(底部附代码)
  2. 读《半世烟雨,半世桃花 李清照词传》有感
  3. python中文名字-Python 批量生成中文姓名(百家姓)
  4. 【飘儿菜】-Matplotlib-绘制饼图
  5. 网易云登陆界面怎么用PHP做,网易云音乐登录流程图
  6. Retina 显示屏的网页图片兼容方案
  7. Go语言之error
  8. 不定积分知识结构图_不定积分计算法则总结
  9. 在开发版上用C语言写实心圆,MFC利用CPen与CBrush绘制实心圆
  10. TU-768与IT180A对比分析报告