emgu / opencv 图像补充意外输出
emgu / opencv image complement unexpected output
我不理解 Image.Not 和 Image.AbsDiff 的相互作用。
- 加载图像(确定)
- 取其补语(OK)
- 差异图像 w/itself(OK=全黑)
- 与原作的差异补全(????这不应该是全白的吗???)
代码如下:
var i0 = CvInvoke.Imread("myimage.jpg").ToImage<Gray,Byte>();
var not = i0.Not();
var diffself = i0.AbsDiff(i0);
var diffnot = i0.AbsDiff(not);
CvInvoke.Imshow(i0,not,diffself,diffnot);
有人可以解释为什么图像与其补充图像之间的差异是全新图像吗?
愚蠢的问题,我一写就看到了错误
加法是减法的逆运算。 :)
//var diffnot = i0.AbsDiff(not);
var reverse = i0.Add(not);
CvInvoke.Imshow(i0,not,diffself,reverse);
我不理解 Image.Not 和 Image.AbsDiff 的相互作用。
- 加载图像(确定)
- 取其补语(OK)
- 差异图像 w/itself(OK=全黑)
- 与原作的差异补全(????这不应该是全白的吗???)
代码如下:
var i0 = CvInvoke.Imread("myimage.jpg").ToImage<Gray,Byte>();
var not = i0.Not();
var diffself = i0.AbsDiff(i0);
var diffnot = i0.AbsDiff(not);
CvInvoke.Imshow(i0,not,diffself,diffnot);
有人可以解释为什么图像与其补充图像之间的差异是全新图像吗?
愚蠢的问题,我一写就看到了错误
加法是减法的逆运算。 :)
//var diffnot = i0.AbsDiff(not);
var reverse = i0.Add(not);
CvInvoke.Imshow(i0,not,diffself,reverse);