在OpenCV里用clipLine裁剪直线段

如果你学习过图形学,就会对这个裁剪算法有深入的了解,比如Sutherland–Cohen算法大体的意思如下:

第一步,判定:

1) 完全在窗口内的直线段,称为完全可见的线段,如AB。保留着

2) 完全在窗口外的线段,称为完全不可见线段,如CD。抛弃掉

 

第二步,处理不能断定为完全可见或完全不可见的线段,如IJ、KL

*这时需要计算出直线段和窗口边界的一个交点,这个交点把直线分成两段,其中一条为完全不可见的线段,被抛弃。

*对余下部分再作第一步的判断,重复上述过程,直到直线段余下的部分可用第一步的判断得出肯定的结论为止。

 

像这样的算法有很多种,都可以实现直线段的裁剪。如果你想在OpenCV里计算两个图形是否相交,或者计算直线段与别的图形是否相交,就可以采用这个函数cv2.clipLine来判断。首先来看这个函数的定义:

猜你喜欢

转载自blog.csdn.net/caimouse/article/details/103684457
今日推荐