How can I crop selected portion of an image and place it in a white background?
2 次查看(过去 30 天)
显示 更早的评论
I am trying to modify a code for watershed method segmentation, and the output figure is this. However, I want to subplot another image in this figure with only the tumor within the boundary in a blank background. How can I do it?
0 个评论
采纳的回答
Image Analyst
2021-5-21
Try this:
subplot(2, 1, 1);
% Display RGB image with yellow boundary burned into it.
imshow(rgbImage); % or display the gray scale image then call hold on and then call plot(xYellow, yYellow, 'y-', 'LineWidth', 3)
subplot(2, 1, 2);
% Mask the image using bsxfun() function to multiply the mask by each channel individually. Works for gray scale as well as RGB Color images.
maskedRgbImage = bsxfun(@times, rgbImage, cast(mask, 'like', rgbImage));
imshow(maskedRgbImage);
If you don't have mask, you can get it from the coordinates of the yellow boundary
[rows, columns, numberOfColorChannels] = size(rgbImage);
mask = poly2mask(xYellow, yYellow, rows, columns);
更多回答(1 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Image Processing Toolbox 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!