OpenCV Python如何在图像上找到并绘制对象的极值点?
要找到并绘制输入图像中对象的极值点,我们可以按照以下步骤进行 –
- 第一步是导入所需库。在所有下面的Python示例中,所需的Python库是 OpenCV 。确保您已经安装了它。
-
下一步是使用 cv2.imread() 函数读取输入图像。使用图像类型(.jpg或.png)指定完整图像路径。将输入图像转换为灰度。
-
在灰度图像上应用阈值处理,以创建二进制图像。调整第二个参数以获得更好的轮廓检测。
- 使用 cv2.findContours() 函数在图像中查找轮廓。
-
从轮廓列表中选择轮廓(假设是第一个轮廓) cnt 或循环遍历所有轮廓。
-
查找最左侧、最右侧、最顶部和最底部的极值点。
-
在图像上绘制这些极值点。要在图像上绘制一个点,我们绘制一个半径很小的实心圆。
-
显示带有绘制轮廓和近似轮廓的图像。
让我们通过一些Python示例来了解如何在图像中找到并绘制对象的极值点。
示例
下面的Python 3程序显示了如何在图像中查找并绘制对象的极值点。
我们将使用以下图像作为此程序的输入文件 –
输出
执行上述代码时,它将产生以下输出 –
我们得到以下窗口显示输出 –
请注意,左侧、右侧、顶部和底部四个极点以红色显示。
示例
在Python的程序中,我们绘制出输入图像中物体的极点。
我们将使用以下图像作为 输入文件 运行这个程序 –
输出
当我们执行上述代码时,将会产生以下输出 –
我们将得到下面的窗口显示输出-
请注意,最左、最右、最上和最下的极点用红色标出。在上述输出中,绘制了两个不同对象(形状)的极点。