使用Python,OpenCV沿着轮廓寻找极值点
Posted 程序媛一枚~
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用Python,OpenCV沿着轮廓寻找极值点相关的知识,希望对你有一定的参考价值。
使用Python,OpenCV沿着轮廓寻找极值点
这篇博客将介绍如何使用Python,OpenCV沿着轮廓寻找极值点,找到最北、最南、最东和最西(x,y)坐标。虽然这项技能本身并不有用,但它通常被用作更高级计算机视觉应用程序的预处理步骤。这种应用的一个很好的例子是手势识别(hand gesture recognition):
cv2.findContours返回的只是(x,y)-坐标的NumPy数组。通过在此数组上调用argmin()和argmax()可以提取极值(x,y)-坐标。
1. 效果图
原始图 VS 效果图如下:
原始图像包含一只手。将计算手部轮廓沿线的最北、最南、最东和最西(x,y)坐标,并绘制在右图中(最西端的点用红色标记,最北端的点用蓝色标记,最东端的点用绿色标记,最南端的点用蓝绿色标记)
从图像中分割了皮肤/手,计算了手轮廓的凸包(蓝色轮廓),然后找到了凸包沿线的极值点(红色圆圈)。
通过计算手部沿线的极值点,可以更好地近似手掌区域(突出显示为蓝色圆圈)
反过来能够识别手势及举起的手指数量等;
2
以上是关于使用Python,OpenCV沿着轮廓寻找极值点的主要内容,如果未能解决你的问题,请参考以下文章