我有一个圆圈的图像,但我的圆圈并不完美 首先我找到了过渡坐标 Detecting Circles without using Hough Circles 而且ı使用这个公式https://math.stackexchange.com/questions/675203/calculating-centre-of-rotation-given-point-coordinates-at-different-positions/1414344#1414344 最后,我有最长和最短的四个半径 现在我有这个图像:
BUt他们是半径我需要找到直径如何从图像中找到直径? 或者如何在圆圈中找到相互/对称/点
答案 0 :(得分:2)
对于这张图片,提到的方法是矫枉过正。只需找到非黑色像素的边界框。由于采样伪像,水平和垂直边长可能相差一或两个像素。
如果我是对的,外圈是277 x 273像素。如果你认为差异是显着的,那么这是一个椭圆,而不是一个圆圈。
答案 1 :(得分:0)
3种方法:
我认为你需要从图像中测量它:
所以使用边缘检测(蓝色线宽从左到右= 蓝色像素边界框的宽度)然后计算像素。
如果您需要,然后转换为您想要的任何单位英寸(使用每英寸像素数)
如果您的圆圈不是完美的圆形(拉伸)测量,那么您也可以找到它的偏差。
还有另一种名为蒙特卡罗方法的方法:
首先生成随机x
和y
(内部正方形)然后评估该点(x, y)
是否在圆圈内并计算内部出现次数,然后您可以计算圆的面积使用内部count/total
的比率(因此直径)。
不使用随机数:
填充(颜色)圈内,然后简单地计数黑色像素这是=圈外的区域=>总面积(正方形面积) - 黑色像素面积= 圆形面积 =>计算直径。