Я новичок в 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. Я пытался использовать несколько каскадов Хаара для обнаружения руки, но, похоже, он не очень хорошо определяет.
Как я могу обнаружить руку из видеопотока, подобного изображенному на этом изображении?
Я думал об использовании YOLO, но я не уверен, как обучить его для пользовательских изображений рук или передать мой файл h5 в классификатор YOLO и использовать его для создания границ коробки на руках в прямом эфире видео с веб-камеры.
Любые ссылки на ресурсы приветствуются. Заранее спасибо.