美文网首页工作生活
自己画有箭头的直线,这是一个很有益的尝试

自己画有箭头的直线,这是一个很有益的尝试

作者: 你说你要一场 | 来源:发表于2019-07-01 19:31 被阅读0次

pyhton的PIL库是深度学习读取图像数组常用的库。
但是PIL库没有画箭头的功能,我要做的程序需要在图像上标注。
有两个选择:
1.使用其他库,如matplotlib、opencv。
2.自己使用画直线的功能画出箭头。

由于前置的程序都是使用PIL实现的,不想再转用其他库,同时,也想挑战一下,自己组织算法实现。
我选择自己解决。

假设:箭头坐标(5, 5),箭尾坐标(100,3)。
(经历了一些尝试。。。。省略)

要实现的要点也有两个:
1.使用sympy等库求方程组;
2.建立两个方程关系。

求方程组自不用说,固定的模板。
假设这个点坐标为(a,b).
建立方程组:1.(a,b)和原直线有一定夹角,这个是自己指定的,怎么好看怎么来。为了好计算设为60度,余弦值为0.5。


IMG_4232.jpg
  1. 这(两)个点到直线的距离相等,可以随便设,之后根据好看程度再调。这里设为3。


    IMG_7754.JPG

剩下的计算步骤如下:


screenshot_15.png

这样就得到箭头的两外两个点,通过从箭头坐标(5, 5)出发画三条直线,就可以画出一个有箭头的直线了。
然后写成一个函数就可以供以后调用了。

相关文章

网友评论

    本文标题:自己画有箭头的直线,这是一个很有益的尝试

    本文链接:https://www.haomeiwen.com/subject/rkvncctx.html