基于OpenCV与MFC的大家来找茬外挂[升级版]
来源:互联网 发布:网络无线收发器 编辑:程序博客网 时间:2024/05/23 01:13
上次编写的大家来找茬外挂虽然是实现了查找不同区域并把不同的区域显示在屏幕上,但是得手动点击,显得很是麻烦,所以最近把程序又改了一改,实现了自动点击功能。
程序的编写流程:
1.做一幅游戏窗口背景图片Screen(),程序加载的同时加载这幅背景图片t=cvLoadImage("template.dll",1)。
2.进行整个屏幕截图同时获取游戏窗口句柄和游戏窗口位置及其大小。
hWnd = ::FindWindow("",_T("大家来找茬"));
winRect.x=winSize.left;
winRect.y=winSize.top;
winRect.width=winSize.right-winSize.left;
winRect.height=winSize.bottom-winSize.top;3.根据获得的游戏窗口信息直接从截取的屏幕图片中得到游戏窗口图片。
cvSetImageROI(m_SnapImage,winRect);
cvCopy(m_SnapImage,m_dstImage);4.将游戏窗口图片和游戏窗口背景图片各个像素进行相减取其绝对值,图像灰度化并二值化。
cvAbsDiff( t,pImg, d);
cvCvtColor( d, temp1,CV_BGR2GRAY);//灰度化处理后的图像
cvThreshold( temp1, temp1 ,1, 255, CV_THRESH_BINARY ); //以1作为阈值进行二值化
5.从游戏区域左上角第一点开始向右开始探测,获取左右两幅图像(游戏图像)的左上角位置。
6.由这两个位置直接将左右两幅游戏图像截取出来,同时将这两幅图像各个像素点进行相减取其绝对值,图像灰度化并二值化。
cvCvtColor( left, temp,CV_BGR2GRAY);
cvThreshold( temp, temp ,1, 255, CV_THRESH_BINARY );
7.将得到的图像进行膨胀,然后进行腐蚀,最后进行平滑。
cvDilate(ctemp, ctemp, 0, 1);
cvErode(ctemp, ctemp, 0, 1);
cvSmooth(temp, temp, CV_GAUSSIAN, 3, 0, 0,0);
8.查找图像轮廓。
cvFindContours( temp, storage, &contour, sizeof(CvContour),
CV_RETR_TREE , CV_CHAIN_APPROX_SIMPLE , cvPoint(0,0) );
9.求出各个轮廓的面积,判断是否面积符合要求,如果符合,求出你中心点并进行鼠标点击动作。
contour_area_tmp = fabs(cvContourArea( contour, CV_WHOLE_SEQ ));
::SetCursorPos(rect.x+rect.width/2+m_rect.left+leftPos.x,rect.y+rect.height/2+m_rect.top+leftPos.y);
::mouse_event(MOUSEEVENTF_LEFTDOWN,520,310,NULL,NULL);
::mouse_event(MOUSEEVENTF_LEFTUP,520,310,NULL,NULL);10.释放资源。
上面粗体部份是这次主要进行的修改。
程序界面:
附上此外挂的使用说明:
1.使用时必须保证游戏画面不被其他窗口遮挡。
2.游戏有自动手动按钮,手动是弥补自动的不足,因此必须在按了自动按钮后无法完全找到才按手动,按手动按钮后可按刷新按钮去除闪烁点。
经过测试,总结如下:
1.只有少部分图像不能全部实习自动点击,但经过手动点击可弥补这个不足。
2.到目前为止未发现有不能找到不同点的游戏图像。
- 基于OpenCV与MFC的大家来找茬外挂[升级版]
- 用VC++, OpenCV写大家来找茬外挂
- 联众大家来找茬外挂(联众找茬外挂) 官网
- 大家来找茬游戏助手、外挂的实现
- QQ游戏-大家来找茬 外挂
- QQHelper:QQ大家来找茬 辅助工具 外挂
- 大家来找茬的部分代码
- 大家来找茬辅助工具超级简易版
- 大家来找茬
- 大家来找茬
- 大家来找茬
- 【智力题】大家来找茬!
- 【转】菜鸟也来打造全自动QQ大家来找茬外挂
- 大家来找茬辅助工具实现
- gtk+ 游戏 “大家来找茬“
- 秒杀“大家来找茬”
- AOJ.602 大家来找茬
- 比较原始的QQ大家来找茬的原型
- UTF-8 AND UTF-8 without BOM(遇到了这个问题 郁闷了会儿)
- 文本批量全角转半角的VBS脚本
- 验证码问题
- Google的银河英雄传说
- 成功的起点
- 基于OpenCV与MFC的大家来找茬外挂[升级版]
- IIS发生意外错误0x8ffe2740
- 约瑟夫问题
- 批量转换图片格式,Shell 和 Python版
- 对东北二人转的一点想法
- DUMPBIN 实用工具的说明
- QC终结之旅-----永远的国优
- DOS命令的简单使用
- [Web 开发] URL 的最大长度