作业帮 > 综合 > 作业

matlab怎么计算线段的长度

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/22 00:00:55
matlab怎么计算线段的长度

就是这个图,怎么求图中那把尺子的长度
请问您要求图上的长度(单位:像素)还是实际场景中的长度?
图上长度稍简单一些,我想可以先分割出尺子来,然后用霍夫变换做直线检测以定出直线,进而找到端点,求线段长度的.
如果需要实际场景中的长度,必须要有相机的内外参数才可以.
再问: 不是实际中的长度,只要能求出一个相对长度就行,是用matlab做么?
再答: 我觉得现在关键还是算法吧。请问您有做过图像处理吗?
再问: 嗯,目前从事这方面的工作,图像处理的基本操作我都会,分割我也会
再答: 嗯嗯 那我上面的思路您觉得怎么样?您之前是怎样的思路? 您之前用什么语言和工具处理图像?
再问: 我用过matlab和ENVI,主要是用matlab,我这个是新的问题,没有什么思路,我刚刚找了一些霍夫变换的程序,试了试,效果不是很好.还有就是怎么通过霍夫变换找到端点呀,我主要就是要找端点
再答: 霍夫变换不能找端点。我的想法是,找到偏离直线一定阈值范围内所有尺子上的像素点,找到其中纵坐标最大最小的两个点作为端点。
再问: 你的这个想法能用编程帮我实现么?
再答: 能,但是我不会自己写的,既然您是做相关工作的,自己动手写一下代码也是应该的吧。
再问: 你看看这是我裁切,hough处理过的图片,主要是后面那个步骤我不太会
再答: 我觉得主要是分割那一步的准确性,如果分割好的话,可以用提取骨架的方法来减少噪声干扰。 后面的工作也不难:霍夫变换的原理您应该是知道的吧,Hough变换拿到直线参数,那就可以取所有分割出的点的坐标来,代入直线方程来检验偏离程度。取偏离较小(阈值自己设)的点,从中找纵坐标最大/小的。