Info

此问题已关闭。 请重新打开它进行编辑或回答。

Is it always necessary to convert image to double type before further execution?

3 次查看(过去 30 天)
Hi,
I want to threshold an image. I can read the image and it is a byte type (UINT 8). I want to pass this image to another function as it is but it asks me to convert to double before I can pass to another function where threshold is performed via MEX MATLAB. How can I pass the image as the same data type? Thanks in advance.

回答(2 个)

Walter Roberson
Walter Roberson 2013-10-2
We don't know. You will need to tell us which function you are trying to pass it to.

Image Analyst
Image Analyst 2013-10-2
Well apparently you can't. It said so. It said it wanted double and rejected your call when you tried to pass in uint8(). I don't know why, but that's the way it is. It seems like it could just cast it to double internally, but, for whatever reason, it doesn't. So I guess you have to live with it. Either use double() if it can take whatever range you have, or use im2double() if it wants it in the 0-1 range.
  6 个评论
Jan
Jan 2013-10-8
编辑:Jan 2013-10-8
@Krishna: This is not Matlab. We do not know: getData_Image function, type and size of "image", value or "rows" and "cols", size and type of "matlab_image" and why you use 1-based indexing here. So currently there is no chance to guess, what you are doing.
Krishna
Krishna 2013-10-8
编辑:Krishna 2013-10-8
Sorry that it was not clear. Actually 'image' variable is byte-array type defined in my header file along with that 'getData_Image' function.1-based indexing is for the matlab arrays as compared to C which is 0-based since I want to transfer pixel values to corresponding places. If all these are unclear, can you please let me know how to access each value of image (which is obviously a matrix) we read in matlab and pass to a C type multidimensional array.

此问题已关闭。

标签

Community Treasure Hunt

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

Start Hunting!

Translated by