why my binary image is 3 dimensional?
4 次查看(过去 30 天)
显示 更早的评论
Hello everybody
I don't know why but I actually have a binary image when I run the programme, it gives me this error:
Error using images.internal.imageDisplayValidateParams>validateCData (line 119)
If the input is logical (binary), it must be two-dimensional.
imshow(ImprovedbinaryImage, []);
When I check the size, it is 3 dimensional. when I use another image for the programme, I have no issue.
How can I deal with that?
0 个评论
回答(1 个)
Jan
2018-5-23
As far as I understand you get a 3D logical array from a program. This is not a valid "binary image" for the used function. The solution seems to be trivial: If you get an input, which cannot be used as input of your function, don't use it as input to your function. Either run the other program such, that you get a logical 2D matrix, or convert the data (perhaps: any(img, 3) ) such, that you get the required dimensions.
If you want a more specific suggestion, explain, which program creates the unusual array and what you have tried to fix this.
2 个评论
Walter Roberson
2018-5-24
You cannot imshow() an image stack. If you want to see the three dimensional volume, try
volumeViewer(double(ImprovedbinaryImage))
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Image Data 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!