哪位高手能帮我解决图像动态识别问题(100分)

  • 主题发起人 主题发起人 rzqcjwrz
  • 开始时间 开始时间
R

rzqcjwrz

Unregistered / Unconfirmed
GUEST, unregistred user!
哪位高手能帮我解决图像动态识别问题?
从摄像机到电脑采集的图像,如何动态的比较,并将有变化的图像存在计算机中。
我的EMAIL:rzqcjwrz@public.cta.cq.cn
电话:13509499403
 
两幅图像异或
若结果为全黑则没变化,否则有变化。
 
老赵:
您好!
能否给我源码,我是一个初学者。
谢谢
任自强
 
for i :=preHeight-1 downto 0 do
begin
preline:= preimage.scanline;
newLine:= newimage.scanline;
for j:=0 to preWidth do
begin
if newline[j]<>preline[j] then //表示不同的一个像素
begin
k:=k+1; //k为计数器,根据要求比较的精度N越小精度越高
if k>N then 有变化,保存新图,并离开LOOP
end
end
end
*****************以上代码只做参考********************
preline、newline 根椐图像的位数,先定义为bytearray、wordarray或自定义为三字节长
其实用bitblt进行异或即可,就像老赵兄所说。
之所以有scanline进行逐位比较,主要是速度更快,因为我有进行测试过。
在800*600 16bit的情况下,所有点比较完毕比直接异或快20%
而且如果有变化,往往不用全程比较。
 
wwolf:
您好!
我是初学者,能否将您的程序完整,以便我能照着做。
谢谢!
 
抱歉,实在没空。
你找别人写吧,很容易的。或者你自已看看DFW上的文章
 
写下你的具体要求,图像识别可不是这么容易的,

上面的方法最多是看图像有无变化,无实用价值,因为摄像机上得到的图像可以说没有两幅是完全相同的,

szmeiyun@21cn.com
 
图像识别当然不容易。识别和比较是不同的概念。
比较大奔和红旗车是不同的不难,分出哪个是大奔哪个是红旗就不容易了。
听楼上的口气,好像是高手,如有机会定当请教请教。
 
呵呵,
我可是就事论事,无意冒犯各位,
因为我的工作中也要接触这方面的东西,有点体会,随口说说而己,
我曾经也在这方面想过办法,后来发现摄像机上得来的图像会随光线、时刻,甚至气流/温度,
发生一些微小的变化,
我主要是这个意思:))

小弟不会说话,请包涵。。。

呵呵
 
改改wwolf的就行了。
或在大富翁上 全文检索
条件 图像 and 异或
或 图像 and xor
一大堆答案,至少还能学学东西:)
祝顺利。
 
从摄像机到电脑采集的图像,由于受到光照、温度、湿度的影响,
几乎都是不同的;
如果非要忽略某些因素,那你就采用异或方式比较两幅图片了。
记得自己搜索,有的是!
 
个人观点:将两幅图像相减,对差图像作算术(或其他)平滑,给定阈值确定
是否为不同图像。
 
多人接受答案了。
 
后退
顶部