(MATLAB)大家来找茬-简易的彩色图像找不同

news/2024/2/29 4:31:10

(MATLAB)大家来找茬-简易的彩色图像找不同

  • 核心代码
  • 测试
  • 其他

by 今天不飞了

闲着没事,又来写代码了。今天相中这个,彩色图像找不同。写了个简易的版本,不适用于手机拍的图


核心代码

function [coorList,num] = SpotTheDifferences(im1,im2)
% 平滑
H = fspecial('gaussian',7,3);
smooth1 = imfilter(im1,H,'same');
smooth2 = imfilter(im2,H,'same');
% 差
ecolor = uint8(abs(double(smooth1)-double(smooth2)));
egray = rgb2gray(ecolor);
% 二值
bw = imbinarize(egray);
% 去小噪
se = strel('disk',5);
obj1 = imopen(bw,se);
% 合大体
se = strel('disk',11);
obj2 = imclose(obj1,se);
% 目标
[label,num] = bwlabel(obj2);
coorList = zeros(num,4);
for n = 1:num[y,x] = find(label==n);y1 = min(y); y2 = max(y);x1 = min(x); x2 = max(x);coorList(n,:) = [x1,x2,y1,y2];
end
end

测试

你自己找两张图像吧

clear; close all; clc
%% {读取图像}
im1 = imread('1.png');
im2 = imread('2.png');
[R,C,D] = size(im1);
im2 = cat(3,imresize(im2(:,:,1),[R,C]),...imresize(im2(:,:,2),[R,C]),...imresize(im2(:,:,3),[R,C])); 
%% {找不同}
[coorList,num] = SpotTheDifferences(im1,im2);
%% {绘制}
subplot(121),imshow(im1)
hold on
for n = 1:numdrawbox(coorList(n,:))
end
subplot(122),imshow(im2)
hold on
for n = 1:numdrawbox(coorList(n,:))
end
% ----function----
function drawbox(coor)
x1 = coor(1); x2 = coor(2);
y1 = coor(3); y2 = coor(4);
x = [x1,x1,x2,x2,x1];
y = [y1,y2,y2,y1,y1];
plot(x,y,'r-','LineWidth',2)
end

两个测试
在这里插入图片描述

在这里插入图片描述


其他

  1. 欢迎提供有意思的题目
    哔哩哔哩讲解视频:【MATLAB】大家来找茬——彩色图像找不同简易代码
  2. 请使用MATLAB2016以上的版本。

http://www.ppmy.cn/news/272125.html

相关文章

scratch 大家来找茬

【项目演示】 “大家来找茬”这款游戏又叫“找不同”。在这个游戏中,玩家要从两张只有细微差异的图片中找出不同的地方。 这款游戏共有8个角色,1个角色时需要查找不同的两张图片,还有5个角色时两张图片中存在差异的地方,另外2个角…

QQ游戏-大家来找茬 外挂

受弟弟邀请做这个外挂,看到了QQ台球的外挂,做的比较好,但是没有QQ找茬的外挂,QQ找茬看起来还比较简单,就是对比两幅图片不同的地方,就动手用C#写了一个。 因为腾讯也做了相应的简单反外挂,两幅…

高德地图使用坑点记录。

一、AMap.AutoComplete 1、AMap.AutoComplete的大小写问题,在v2版本中,从Autocomplete改成了AutoComplete,变成了大驼峰,真的坑死,千万别看错文档,不然就变成大家来找茬。 2、AMap.AutoComplete中的city属…

项目实战:Qt+OpenCV大家来找茬(Qt抓图,穿透应用,识别左右图区别,框选区别,微调位置)

若该文为原创文章,转载请注明出处 本文章博客地址https://hpzwl.blog.csdn.net/article/details/124768637 红胖子(红模仿)的博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软硬结合等等&#…

大家来找茬,一张图看2D游戏和3D游戏

全2d: 许多2d游戏使用平面图像,没有三维几何结构,没有透视关系。 3d图形2d玩法: 虽然环境和角色使用了三维几何体,但玩法是2d的,怎么理解呢?比如很多跑酷游戏,虽然障碍物和玩家视角是3d&…

大家来找茬--初识图像处理

今天在一个人的博客http://mindhacks.cn/topics/programming/上看到的文章,引发我自己开始写博客的念头。内容就从最近玩的大家来找茬开始吧。 最近我的朋友没事迷上了大家来找茬,我想,做个软件搞定它,那就不要烦了。就这样开始了…

用VC++, OpenCV写大家来找茬外挂

本文作者:longlongago 博客地址:http://blog.csdn.net/longlongago2000 1.问题:最近看到很多人在玩 大家来找茬,于是自己也下载玩了一下,但是由于基础太差,经常都是输多赢少。于是我想到了用OpenCV写个…

微信小程序大家来找茬 ,快速通过方法

将截取的图片 利用PS 先转化为图层,然后 改变图层透明度,图片不同就会马上在画布上展示-2018-2-26 9:44:03

大家来找茬儿

第一张图片,是安装.Net Framework3.5 SP1的时候, 提醒我"请关闭当前的.Net Framework3.5 SP1安装程序,否则无法继续安装.Net Framework3.5 SP1". 第二张图片是安装VS2008 Express版本的时候,提醒我必须安装以下IIS组件,但是却没有任何组件的名称, "you must ins…

汇编语言-实验6(学习打卡Day18)

📋 作者介绍:友友们好我是乱披风锤,大二学生党一枚 💖作者主页:乱披风锤的个人博客主页.乱披风锤 🔥我和友友们一样喜欢编辑,天天敲代码🤭,沉迷学习,日渐消瘦…

QQ大厅游戏 大家来找茬辅助

本宝宝又回来了 Python做个简单的游戏辅助 我在玩QQ游戏 比如大家来找茬的时候 眼力不是很好 经常找不到,但是又好奇 这我没找到的位置都在哪里呢?所以我做个辅助帮我把两幅图的像素相减,再把得到的噪点值粘回去到某幅图上,总体流…

python找不同_用Python玩大家来找茬

Jupyter Notebook:用Python玩大家来找茬​fivecakes.com 最近学习计算机视觉的时候遇到找两张图片不同的问题,找到解决方案后,在QQ游戏大家来找茬中实验了一下效果. 要找不同首先得把两张图片提取出来嘛,我们先把电脑屏幕截图,然后再提取我们需要的图片. 我对比过pyscreensh…

封校大学生在宿舍无聊玩起图像大找茬——一个关于游戏的练手小项目(一起领略Python脚本的风采吧)

???一个帅气的boy,你可以叫我 ?? 个人主页:的个人主页 ???如果对你有帮助的话希望三连???支持一下博主 图像大找茬 前言基础知识图片找茬抓取句柄图片GUI界面搭建 前言 在一个月黑风高的夜晚,我的舍友小许摇起我来,面…

大家来找茬图片比较脚本

第一份代码是比较两幅图,找出差异来。 # -*- coding: cp936 -*- import ctypes import Image, ImageGrab, ImageChops#构造RECT结构体 class RECT(ctypes.Structure): _fields_ [(left, ctypes.c_long), (top, ctypes.c_long), (right, ctypes.c_long), …

python系列:玩转大家来找茬

心血来潮,想写个大家来找茬的外挂。 先说下大致思路: 1.利用python调用win32截取QQ游戏的大家来找茬的两幅图。 2.计算两幅图的差值图像 3.对插值图像过滤,色域筛选,二值化,圈出差异轮廓 4.将差异轮廓的坐标&#…

【Python】QQ大家来找茬辅助

辅助环境准备: 1、下载并安装Python3。(https://www.python.org/ftp/python/3.8.3/python-3.8.3-amd64.exe) 2、安装pywin32、pillow库。(以下都是用的清华大学的pip源安装) pip install -i https://pypi.tuna.tsingh…

欢迎大家来找茬 bug在哪里?

(function () { $(.monitor .tabs).on(click, a, function () { $(this).addClass(active).siblings(a).removeClass(active) // console.log($(this).index()); 点击的索引号 $(.monitor .content).eq($(this).index()).show().siblings(.content).hide() }) //克隆行 $(.marq…

大家来找茬 两幅图像相减 其它好的实现?

#include <opencv2/core/core.hpp> #include <opencv2/highgui/highgui.hpp> using namespace cv; int main() {Mat img1 imread("D:\\image\\img1.jpg");Mat img2 imread("D:\\image\\img2.jpg");//两幅图像的大小需要一致 Mat img_result1…

大家来找茬辅助工具实现

昨天看到同学在玩大家来找茬&#xff0c;一时兴起&#xff0c;打算自己写个辅助工具。其实游戏很简单&#xff0c;就是找出两幅图片中的不同之处。游戏规则了解了&#xff0c;那外挂的思路也就很明朗了只要对比两幅图片的像素&#xff0c;有不相同就存储进数组就可以了。有了思…

大家来找茬的部分代码

HWND hGame ::FindWindow(NULL, "大家来找茬"); if (hGame 0) { MessageBox("未找到窗口"); } else { ::SetWindowPos(hGame,HWND_TOP,0,0,0,0,SWP_NOMOVE | SWP_NOSIZE | SWP_SHOWWINDOW); HDC hDC ::GetDC(hGame); int i, j; int nClrLeft…
最新文章