1、抽取红色的原因,是因为需要用一种颜色标识出,动态图像改变的部分,原则上三原色中选哪个通道都可以,醒目就可以了。加入抽取B通道,那么这张图片的红色部分就会变成绿色http://www.codeproject.com/cs/media/Motion_Detection/1.jpg2、一般来说图片红色通道部分都会有颜色信息,只是由于光的混合,看起来才不是纯红色3、最后一步用替换,或者用覆盖效果都一样,目的都是为了得到 only the regions where the actual motion was.
//从原始图像提取红色通道----没错,是叫通道
IFilter extrachChannel = new ExtractChannel( RGB.R );
//IFilter 接口,应该是自己定义的,得看其它部分代码
Bitmap redChannel = extrachChannel.Apply( image );
//merge red channel with motion regions
//在运动区域合并红色通道---?动画?
Merge mergeFilter = new Merge( );
//Merge 类应该也是自己定义的,得看其它部分代码
mergeFilter.OverlayImage = tmp3;
Bitmap tmp4 = mergeFilter.Apply( redChannel );
// replace red channel in the original image
//在原始图像替换红色通道
ReplaceChannel replaceChannel = new ReplaceChannel( RGB.R );
replaceChannel.ChannelImage = tmp4;
Bitmap tmp5 = replaceChannel.Apply( image );大概意思就是提取及替换红色通道...
Channel是指RGB图像通道...
Extract是提取...你不会查词典吗-_-!
我知道它的字面意思
只是小弟不明白 为什么先提取然后 又替换如果原图上没有红颜色怎么办呢?RGB图像通道是什么东东???
通道的概念,lz可以查一查photoshop的一些講解和教程
爲什麽選擇R通道呢?我猜這只是作者的愛好,G和B通道應該都可以,因爲前文提到過,提取出來的像素是“white pixels”。爲什麽要提取然後合併呢?因爲當前禎已經是一幅經過處理的灰度圖片,沒有任何色彩,如果直接把“white pixels”合併上去,圖像的效果並不明顯,所以要抽取出一個通道來進行合併。純屬猜想,沒有閲讀到Aforge源碼,不保證正確