1
A
回答
0
有这不错的功能roipoly,你可以用它来从一组顶点创建遮罩:
BW = roipoly(I, c, r)
返回由矢量c
和r
描述的多边形,其中指定列和指定的投资回报率每个顶点的行索引。c
和r
必须是相同的大小。
你有那么到目前为止是:
imglena = imread('lena.png');
imshow(imglena)
siz = size(imglena);
c = [1 1 siz(2)/2];
r = [1 siz(1) siz(1) ];
line([c c(1)],[r r(1)],'color','r','LineWidth',4);
与c
和r
列和三角形的顶点的行。
前面提到的掩模,现在可以用于提取的原始图像的感兴趣区域:
mask = roipoly(imglena,c,r);
imglena_cropped=bsxfun(@times, imglena, cast(mask,class(imglena)));
或我宁愿,使用普通的逻辑索引,而不是巨大矩阵乘法的方法:
mask = repmat(roipoly(imglena,c,r),[1 1 3]);
imglena_cropped = 255/2*ones(size(imglena),class(imglena));
imglena_cropped(mask) = imglena(mask);
这样您还可以更轻松地控制生成的背景颜色;例如我将它设置为灰色。
最后,你可以用修剪产生的图像:
imglena_cropped = imglena_cropped(min(r):max(r),min(c):max(c),:);
相关问题
- 1. 裁剪三角形每像素
- 2. 在图像中旋转三角形 - MATLAB
- 3. 如何裁剪一个三角形
- 4. 在matlab中裁剪正方形图像
- 5. 在Matlab中裁剪图像
- 6. 在matlab中裁剪图像
- 7. 直角三角形实施
- 8. java直角三角形
- 9. 在三角形中找到直角
- 10. 为什么三角形被裁剪在这个网格中?
- 11. 圆角裁剪
- 12. 圆角裁剪图像使用jquery
- 13. 图像不裁剪到角落的ImageView
- 14. 调整角落并裁剪图像openCV
- 15. 以六角形的形状裁剪UIImage?
- 16. 在三角形的三角形中绘制三角形
- 17. 带圆角的css三角形图像?
- 18. 如何在MATLAB中的图像中绘制三角形?
- 19. MATLAB。逆裁剪图像。
- 20. MATLAB帮助裁剪图像
- 21. 通过指定四个角点(非矩形)来裁剪图像
- 22. 在matlab中裁剪图像for循环
- 23. 在Matlab中裁剪和变换图像
- 24. SVG圆角裁剪
- 25. 在Matlab中获取上三角形
- 26. 在Matlab中生成三角形分布
- 27. 如何反转直角三角形(JAVA)
- 28. 直角三角形计算返回0?
- 29. Matlab绘图四面体和三角形
- 30. GPC多边形裁剪机是否进行三角测量?
你能解释一下你的提取物直角三角形的意思。你想测量三角形的其他角度或边长吗?如果您使用'图像'绘制三角形,那么边缘是否与轴线平行,或者是否是其他方向的三角形?如果可能,你可以上传图片吗? – mythealias
图片链接:http://i103.photobucket.com/albums/m160/akz218/123-1.jpg –
那么这个三角形是如何定义的?你有角点?所有构成双方的点?三角形中的所有点? –