tiff file data types

4 views (last 30 days)
K.G
K.G on 30 Dec 2017
Answered: Walter Roberson on 31 Dec 2017
Hi, I am trying to write a function that takes a tif file as imageIn, then converts the data type into uint8 and gives out imageOut. the problem is that when I give a file which is not in logical data type format, it gives this error:
Matrix dimensions must agree. Error in Imfunction if class(image) == 'logical'
I dont understand how to fix the code. could someone help me figure it out? here is the code:
function imageOut = Imfunction(imageIn)
image = imread(imageIn);
if class(image) == 'logical'
image = uint8(image) .* uint8(255);
end
imwrite(image,'imageOut');
end

Answers (1)

Walter Roberson
Walter Roberson on 31 Dec 2017
Use islogical() instead of comparing the class.
If you must compare the class then use strcmp instead of == .
If you must use == then use R2016b or later and
if string(class(image)) == 'logical'

Categories

Find more on Convert Image Type in Help Center and File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!