colormap/caxis edit roipoly

3 次查看(过去 30 天)
I would really appreciate help on this one,
Using roipoly to isolate data but when the function displays the initial image I want to draw on, the scaling is all wrong and it just shows a black image.
Applying colormap or caxis on figure editor shows the scaling is wrong but the below code does nothing. How can I set caxis on roipoly figure?
e.g.
BW = roipoly(img)
colormap hot
caxis([0 1000])
Many thanks, Will

采纳的回答

Image Analyst
Image Analyst 2014-11-20
Don't pass in img - I never do. Just set up the image in advance as far as how you want it to look.
imshow(img, []);
colormap(hot(256));
colorbar;
mask = roipoly;

更多回答(1 个)

Charlotte Chaze
Charlotte Chaze 2018-2-20
编辑:Charlotte Chaze 2018-2-20
The previously accepted answer doesn't work for me in R2017b - here is what does, using OP's example img.
When you use roipoly, it resets caxis to [0 1]. So just change the scale in your img to [0 1]. In this case, here are the series of commands you'd use:
Use 'caxis' to find out what the scale of your image is.
caxis
Say it's [0 1000]. This will give back
ans = [0 1000]
Now, divide your img by 1000 to reduce the caxis to [0 1]. Then use roipoly on that.
img = img ./ 1000
mask = roipoly(img)

类别

Help CenterFile Exchange 中查找有关 Orange 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by