【问题标题】:Detecting and tracking the human hand with OpenCV使用 OpenCV 检测和跟踪人手
【发布时间】:2020-06-03 08:26:24
【问题描述】:

我是 OpenCV 和 Tensorflow 的新手。我使用 Tensorflow 2.0 创建了一个分类器来检测美国手语的 26 个字母。

这是 CNN 代码。

# Designing our CNN
i = Input(shape=(IMAGE_SIZE[0],IMAGE_SIZE[0],3))
x = Conv2D(32, (3, 3), activation='relu', padding='same')(i)
x = BatchNormalization()(x)
x = Conv2D(32, (3, 3), activation='relu', padding='same')(x)
x = BatchNormalization()(x)
x = MaxPooling2D((2, 2))(x)
# x = Dropout(0.2)(x)
x = Conv2D(64, (3, 3), activation='relu', padding='same')(x)
x = BatchNormalization()(x)
x = Conv2D(64, (3, 3), activation='relu', padding='same')(x)
x = BatchNormalization()(x)
x = MaxPooling2D((2, 2))(x)
# x = Dropout(0.2)(x)
x = Conv2D(128, (3, 3), activation='relu', padding='same')(x)
x = BatchNormalization()(x)
x = Conv2D(128, (3, 3), activation='relu', padding='same')(x)
x = BatchNormalization()(x)
x = MaxPooling2D((2, 2))(x)
# x = Dropout(0.2)(x)

# x = GlobalMaxPooling2D()(x)
x = Flatten()(x)
x = Dropout(0.2)(x)
x = Dense(1024, activation='relu')(x)
x = Dropout(0.2)(x)
x = Dense(1024, activation='relu')(x)
x = Dropout(0.2)(x)
x = Dense(K, activation='softmax')(x)

model = Model(i, x)

这里是完整代码的链接。 https://colab.research.google.com/drive/1_9MVqaRpk5UnZxc8l4OC78JaHlXkAwrL

这是分类的预览图。

它能够准确地检测出所有 26 个字母。 这是混淆矩阵。

我能够保存 h5 文件,该文件能够对仅包括手的 100 x 100 图像进行分类。

后来我能够使用 OpenCV 从网络摄像头获取提要,但我不确定如何使用我的模型来检测手并在其上创建一个边界框以提取手并将其馈送到 ASL CNN 分类器。我确实尝试使用一些 Haar 级联来检测手,但它似乎检测得不太好。

如何从视频源中检测到手,就像这张图片中的手一样?

我正在考虑使用 YOLO,但我不知道如何训练它以获取自定义手部图像,或者将我的 h5 文件提供给 YOLO 分类器,并使用它在网络摄像头的实时视频源上创建跨手的边界框.

欢迎提供任何资源链接。先感谢您。

【问题讨论】:

  • 我会建议您避免在问题中发布链接,同时显示您到目前为止尝试了什么以及问题出在哪里,在发布问题时尝试显示您的努力
  • 好的。我会修改它。

标签: python opencv tensorflow yolo haar-classifier


【解决方案1】:

对于 yolov3 或 yolov4 的检测,你可以试试这个:

https://github.com/cansik/yolo-hand-detection

关于数据集:

一般有两种类型的数据集:

您可以通过检查https://github.com/cansik/yolo-hand-detection来检查如何训练它们或您自己的数据

【讨论】:

    猜你喜欢
    • 2011-01-12
    • 1970-01-01
    • 1970-01-01
    • 2013-05-16
    • 1970-01-01
    • 2017-08-08
    • 1970-01-01
    • 2017-11-15
    • 2016-04-24
    相关资源
    最近更新 更多