首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >对感兴趣区域进行边缘检测

对感兴趣区域进行边缘检测
EN

Stack Overflow用户
提问于 2018-05-23 15:12:59
回答 1查看 177关注 0票数 0

我使用matlab eight.tif中的8个图像

我有以下代码:

代码语言:javascript
复制
FullImage = imread('eight.tif');
roi_col = [50 50 250 250];
roi_row = [200 50 50 200];
ROI_help1 = roipoly(FullImage,roi_col,roi_row);
roi_col = [100 70 200 200];
roi_row = [180 100 70 180];
ROI_help2 = roipoly(FullImage,roi_col,roi_row);
ROI=logical(ROI_help2-ROI_help1);
YourFilter = @(x) edge(FullImage,'Canny',0.1);
J = roifilt2(FullImage,ROI,YourFilter);
figure, imshow(FullImage)
overlay=imoverlay(FullImage,J,'red');
hold on;
imshow(overlay);

这给了我这个:edge detection performed with canny on roi

我如何才能只在圆上执行精明的边缘检测,而不接触内部和外部的红色区域,所以它应该在那里显示正常的图像?

EN

回答 1

Stack Overflow用户

发布于 2018-05-24 16:17:15

解决了我的问题。只需要从J创建一个ROI和substract的补集

代码语言:javascript
复制
ROI_neg=imcomplement(ROI);
LOL=J-ROI_neg;
figure;
overlay=imoverlay(Image,LOL,'red');
hold on;
imshow(overlay);

但是,如果我使用不同的图像(拼接的图像。太大而无法更新)它不会工作。我是否遗漏了任何特定的要求?数据类型等?我使用.tif

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50482033

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档