初始掩码我有上面的蒙版,它大致是一个梯形的形状,我想把它转换成这样。这意味着两侧都被拉直了——尤其是面罩的正面。我想改变这个蒙版,使边缘变直,而不仅仅是创建一个相同大小的梯形蒙版,因为我想在其他没有梯形的蒙版上重复这个过程,并改变其他不同形状的蒙版,大多数不是规则的。这可能吗?
尝试了扩张和侵蚀,但没有预期的效果,尽管意识到这可能不会有什么影响。
对于这个任务,我想方法cv2.findContours()
将会有所帮助。当你得到你的遮罩轮廓后,你可以用cv2.approxPolyDP()
函数来近似你的图形成一些多边形。如果你想让你的多边形是凸的,试试cv2.convexHull()
,也试试cv2.boundingRect()
或cv2.MinAreaRect()
,尽管它们将分别产生一个右矩形和旋转矩形。
无论哪种方式,尝试阅读这篇文章,了解如何使用您的蒙版的更多细节。不过,opencv中可能有更多适合当前任务的函数。