作者xz7912 (MeliKuster)
看板MATLAB
标题[问题]关於RGB值相减做图片比对
时间Fri Apr 11 01:27:08 2014
大家好,
最近在尝试用简单的方式做图片的比对,
状况是这样的,
目前应用webcam,
将受测者身上想标记的地方贴上色布作为标记点,
并以每秒20~30张的速度将连续动作拍成图片(I)存下来,
大约1~2000张,
举例来说就是重复做举手的动作并拍下来,
可能I1~I133是第一次举手,I134~I255是第二次举手的动作,
接着撷取出标记点(图片T)的RGB值取平均,
然後将图片(I)的RGB值分别减掉图片(T)的RGB平均值以後相加,
最後是找出加总後最小值的x,y并标记出来,
可是我发现图片I跟T必须是同一张,否则会判断失败,
例如图片T使用第一组照片的起始动作,
而图片I使用第二组照片的起始动作,
比对就会出错,想请问大家该怎麽改进这个演算法Q_Q?
程式码如下,
clc;
clear1;
f=imread('xx.jpg');
T=double(imcrop(f,[359,84,0,0]));
for i=1:1200
ii=int2str(i);
I=double(imread(xxx.jpg));
Tr=T(:,:,1);
Tg=T(:,:,2);
Tb=T(:,:,3);
TRM=mean(mean(Tr));
TGM=mean(mean(Tg));
TBM=mean(mean(Tb));
Ir=abs(I(:,:,1)-TRM);
Ig=abs(I(:,:,2)-TGM);
Ib=abs(I(:,:,3)-TBM);
IrgbT=Ir+Ig+Ib;
[x,y]=find(IrgbT==min(min(IrgbT)));
(然後把找到的最小值标出来)
end
希望大家能提点提点Q_Q
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 59.127.51.228
※ 文章网址: http://webptt.com/cn.aspx?n=bbs/MATLAB/M.1397150830.A.FFB.html
1F:→ jatj:GOOGLE pattern matching, 2d cross correlation, 04/11 10:45
2F:→ jatj:computer vision 04/11 10:45
3F:→ xz7912:感谢J大!! 04/11 15:50