How to convert mxarray datatype in simulink
7 次查看(过去 30 天)
显示 更早的评论
I have to remove small objects from binary image and Im trying to use bwareaopen in simulink by using following code:
function y = fcn(u)
x = zeros(size(u));
coder.extrinsic('bwareaopen');
x = bwareaopen(u, 50);
y = double(x);
and getting error:
Class mismatch for variable 'bwareaopen'. Expected 'double', Actual 'logical'. Block MATLAB Function (#24) While executing: none
Model is as follows:

%
0 个评论
采纳的回答
Ryan Livingston
2014-4-2
For allocating logical data use either of the functions true or false:
x = true(size(u));
x = false(size(u));
5 个评论
Sayed Rizban Hussain
2016-5-18
编辑:Sayed Rizban Hussain
2016-5-18
yes bwareaopen is supported in matlab coder as I have used it previously. Now my target machine is raspberry pi. Can you suggest me any function that can replace bwareaopen? As for my application I only need objects of a specific area range.
更多回答(1 个)
Kaustubha Govind
2014-3-20
It looks like bwareaopen returns an output of type logical. You need to pre-declare 'x' as follows:
x = zeros(size(u), 'logical');
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Computer Vision with Simulink 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!