How to do manual thresholding using the set of images?

Illustration
Manoj Kumar - 2023-02-23T10:55:08+00:00
Question: How to do manual thresholding using the set of images?

Hi, I have a code for the Manual thresholding and I am unable to run the code correctly. I am using two images to do the thresholding. The imorig is the below original image   and the im is the below segmented image. I want to do thresholding with the help of two images.   this is how i run the code:   >> im=imread('5013lt685dapi_segmented.tif'); >> imorig=imread('5013lt685dapi.tif'); >> name='abc'; >> manual_thresh(im,name,imorig); AND THE ERROR I AM FACING IS Error using set Bad property value found. Object Name: image Property Name: 'AlphaData'. Error in manual_thresh>update_plot (line 239) set(h_ax1, 'AlphaData', bw); Error in manual_thresh (line 180) update_plot  

Expert Answer

Profile picture of Neeta Dsouza Neeta Dsouza answered . 2025-11-20

If you put a breakpoint at line 239

 

 set(h_ax1, 'AlphaData', bw);

you will observe that bw will have the same dimensions as your input image. So if the input image is mxnx3, then bw will be mxnx3 as well.

In order to use nonscalar alpha data, you need to specify the alpha data as an array equal in size to CData of images and surfaces or…
 
Since CData is your original image, your bw has the correct size in width and height (mxn). What is not all that clear from the notes but probably should be based on the context is that your AlphaData should be mxnx1. Your line of code then becomes
 
 
 set(h_ax1, 'AlphaData', bw(:,:,1));

Try this and see what happens.


Not satisfied with the answer ?? ASK NOW

Get a Free Consultation or a Sample Assignment Review!