python 获取,缩放和绘制轮廓的中心

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 获取,缩放和绘制轮廓的中心相关的知识,希望对你有一定的参考价值。

    
  def get_cnt_center(img, c):    # image img and contour c    
    M = cv2.moments(c)
    # cX, cY of center
    cX = int(M["m10"] / M["m00"]) 
    cY = int(M["m01"] / M["m00"])
    # draw the contour and center of the shape on the image
    cv2.drawContours(img, [c], -1, (0, 255, 0), 2)
    cv2.circle(img, (cX, cY), 7, (255, 255, 255), -1)
    cv2.putText(img, "center", (cX - 20, cY - 20),
    cv2.FONT_HERSHEY_SIMPLEX, 0.5, (255, 255, 255), 2)
    plt.imshow(img)
    return (cX, cY)
                
                
                
                
  def scale_cnt_from_center(c, rate):
    M = cv2.moments(c)
    # cX, cY of center
    cX = int(M["m10"] / M["m00"]) 
    cY = int(M["m01"] / M["m00"])
    return ((c- [cX, cY])* rate + [cX, cY]).astype('int32')

以上是关于python 获取,缩放和绘制轮廓的中心的主要内容,如果未能解决你的问题,请参考以下文章

如何隔离轮廓内的所有内容,对其进行缩放并测试与图像的相似性?

matlab中网格数据的绘制轮廓

python-opencv获取二值图像轮廓及中心点坐标

在 MKMapView 上绘制网格

python-opencv轮廓基本绘制

在轮廓JavaCV周围绘制边界框?