1701008774
1701008775
操作正确:若在图片上选择了正确的茬点的位置,则出现标志框选出该茬的位置,代表已被正确找出,同时显示当前图片还剩下多少茬。
1701008776
1701008777
操作错误:若选择了错误的茬点的位置,则进入冷却状态,时间为2秒。选择错误后,2秒内玩家无法对图片进行操作,2秒结束后一切恢复正常。
1701008778
1701008779
游戏时间:每张图片的时间为50秒,若时间耗尽则根据游戏模式结束游戏或换下一张图。
1701008780
1701008781
【问题】怎么快速进行图像对照找茬?
1701008782
1701008783
【分析】
1701008784
1701008785
针对这个问题,每一个用户各有见解,然后人的眼睛观察再仔细,都比不上计算机的进行搜索式对比,游戏设定了时间限制,因此采用人眼进行图像找茬,未免存在缺陷,以下采用计算机进行模拟。
1701008786
1701008787
如图7-1和图7-2所示,两张图像很明显,就是车站的差异,因此人眼和计算机相比,在这个图像中人眼肯定快得多,当采用MATLAB程序模拟程序如下:
1701008788
1701008789
clc,clear,close all %清屏和清除变量 warning off %消除警告 a1=imread(‘1.png’); a1 =imresize(a1,[512 512]); %图像压缩尺寸到512*512 a2=imread(‘2.png’); a2 =imresize(a2,[512 512]); %图像压缩尺寸到512*512 a3=imsubtract(a2,a1); %连续两帧图像做差 figure,imshow(a3); %显示图像
1701008790
1701008791
1701008792
1701008793
图7-1 待测图像1 图7-2 待测图像2 运行程序输出图像如图7-3所示。
1701008794
1701008795
1701008796
1701008797
1701008798
图7-3 计算机找茬
1701008799
1701008800
采用计算机找茬,用户也能够实现找出茬点所在的位置。
1701008801
1701008802
然而对于比较小的图像,或者是特征不太明显时,计算机相对人眼表现更优,具体的图像如图7-4所示。
1701008803
1701008804
1701008805
1701008806
1701008807
图7-4 找茬图像组
1701008808
1701008809
编程MATLAB程序如下:
1701008810
1701008811
clc,clear,close all %清屏和清除变量 warning off %消除警告 a = imread(‘3.jpg’); %读图 figure,imshow(a) %显示图像 a1=a(1
:300,1:floor(785/2),
:); %图像1 a2=a(1
:300,floor(785/2)+2
:end,:); %图像2 a3=imsubtract(a2,a1); %连续两帧图像做差 a4 = imsubtract(a1,a2); %连续两帧图像做差 a5 = a3+a4; figure,imshow(a5);
1701008812
1701008813
运行程序输出图像如图7-5所示。
1701008814
1701008815
1701008816
1701008817
1701008818
图7-5 找茬结果
1701008819
1701008820
如图7-5所示可知,采用人眼进行一一查找将显得比较困难,因此计算机仿真带给人们很大的辅助作用,21世纪最伟大的发明之一当属电脑。
1701008821
1701008822
同样采用计算机进行找茬如图7-6和图7-7所示。
1701008823
[
上一页 ]
[ :1.701008774e+09 ]
[
下一页 ]