【python入门】用opencv画圆

本文,介绍一下,用python调用opencv,在画面上绘制几何图形的方法。

东西/原料

  • 电脑
  • python

要领/步调

  1. 1

    用numpy机关一个500*365的白色画面:

    img=np.ones((365,500,3))*255

  2. 2

    在画面中间,画一个半径为10的蓝色小圆圈:

    u,v=img.shape[:2]

    cv2.circle(img,(int(v/2),int(u/2)),10,(255,0,0),2)

    注重看u和v的位置。

  3. 3

    我们要把坐标原点放到画面中间,我要做一个自界说函数:

    def pc(img,pt,r):

        u,v=img.shape[:2]

        cv2.circle(img,(int(v/2)+pt[0],int(u/2)+pt[1]),

                   r,(255,0,0),2)

        return img

    用这个自界说函数作图:

    img=pc(img,[0,0],100)

  4. 4

    for i in range(2,150,5):

        img=pc(img,[0,0],i)

  5. 5

    看看点(30,60)的位置:

    img=pc(img,[30,60],10)

    竟然在原点的下面。

  6. 6

    img=pc(img,[30,-60],10)

    这有点反通例了。

  7. 7

    为此,修改自界说函数,使之切合通例:

    def pc(img,pt,r):

        u,v=img.shape[:2]

        cv2.circle(img,(int(v/2)+pt[0],

                        int(u/2)-pt[1]),

                   r,(255,0,0),1)

        return img

    img=pc(img,[30,60],2)

  8. 8

    这样,可以画一条由圆圈构成的曲线:

    for i in range(-300,300,3):

        

        img=pc(img,[i,int(60*np.sin(i/60))],

                    abs(int(10*np.sin(i/10))))

    END
  • 发表于 2022-08-23 21:32
  • 阅读 ( 83 )
  • 分类:其他类型

相关问题

0 条评论

请先 登录 后评论