将灰度视频转换为二进制以生成代码

时间:2014-02-12 23:21:47

标签: matlab image-processing computer-vision simulink matlab-cvst

这是我的问题:最近我从Simulink Coder了解了Simulink模型的代码生成。该模型包括MATLAB Function块,使用以下内容将灰度视频信号转换为二进制:

修改     二进制= im2bw(inputVideo,level);

因为,对于我的应用程序,我注意到它比Autothreshold阻止更准确(我不知道为什么),但Simulink Coder不支持im2bw功能(就像你看到的那样)这里http://www.mathworks.it/it/help/simulink/ug/functions-supported-for-code-generation--categorical-list.html#bsl0arh-1)。所以,我会尝试使用:

创建outputVideo
Binary = false(size(inputVideo)); % to inizialize
Binary(inputVideo>=threshold)==true;

...但是当我使用灰度图像执行此操作时,outbinary图像是全黑图像。有没有办法在不使用Autothreshold阻止或im2bw功能的情况下执行此转换?提前谢谢!

1 个答案:

答案 0 :(得分:3)

这一行错了:

Binary(inputVideo>=threshold)==true;

您要将Binary(inputVideo>=threshold)true进行比较。正确的:

Binary(inputVideo>=threshold)=true;