С нуля - построить модель и запустить приложение для выполнения вывода на изображениях
Рекомендуется настройка с использованием виртуальной среды, чтобы не противоречить другим существующим и, возможно, не совместимым версиями Python (между 3,8 и 3.11). Версии Python ограничены из-за требований библиотеки Scikit-Learn. Эта установка Scikit-Learn (1.4.0) обрабатывается требованиями. Если вы решите не использовать виртуальную среду, обязательно удалите другие не совместимые версии Python. Также проверьте наличие существующих не совместимых версий зависимостей, перечисленных в файле TEDS.TXT. Это может быть немного рутиной, поэтому лучше вместо этого использовать виртуальную среду и позволить Python выяснить все приемлемые версии для вас.
1 - Загрузите/установите полезную 64 -битную версию Python (все между 3,8 и 3.11)
2 - из командной строки Windows Установить VirtualEnv -Example: PIP установить VirtualENV
3 -Создайте VirtualEnv в вашем каталоге проекта -пример: Python -m Virtualenv -Python Python310 ASL [если использование Python 3.10] -чтобы увидеть, какие версии Python установлены в вашей системе: Py -0 -! Предупреждение: если используете Windows/PowerShell, вам может потребоваться изменение политики выполнения, чтобы разрешить Scripts, чтобы ActiveNecemple -образцек -образца -для ActiveNememple -EctiveNemelem. SET -EXECUTICEPOLICY -SCOPE CURCENCEUSER -EXECUTIONPOLICY UNERSRICTINGTINGED -FORCE
4 -Активируйте свой новый VirtualENV из своего каталога проекта -.
5 -Следует увидеть обновленную командную строку, показывающую активированную Virtualenv -Example: (ASL) PS C: Projects Capstone ASL
6 -Проверьте версию Python, используемая VirtualEnv -Example: Python -version - -output: python 3.10.0 [или что бы ни была ваша версия]
7 -CD в каталог VirtualENV -пример: CD ASL
8-Clone Github Repo на локальную машину-Пример: Git Clone https://github.com/cpeterla-sketch/asl-recegonition.git --plow: клонирование в «aSl-recognition» ... удаленное: перечисление объектов: 518, сделано. Удаленный: подсчет объектов: 100% (88/88), сделано. Удаленный: сжатие объектов: 100% (54/54), сделано. Удаленный: общее количество 518 (Delta 35), повторно используется 72 (Delta 27), Pack используется 430 приемных объектов: 100% (518/518), 40,60 MIB | 3,62 миб/с, сделано. Разрешение Deltas: 100% (270/270), сделано.
9 -Установка требуемых зависимостей Python -Каталог -изменение: CD. ASL -RECOGNITY ASLML
-В -установленных зависимостей -экзамен: установка PIP -R TEDS.TXT -OTPUT: ... Установка Собранных пакетов:
10 - Загрузите наборы обучения и тестирования по приведенным ниже ссылкам –full_training_dataset.zip (2,51 ГБ) https://drive.google.com/file/d/1ups86xkwbjnrwf7qnhexk4infllgjvtk/view?usp=sharing –extract и save to ~./Asl -recgggggjvtk/view? -PATH to DIR должен быть: ~./ASL-RECOGNITION/ASLML/IMAGES/FULL_TRAING_DATASET/-каталог должен иметь один суб-каталог для каждой буквы в алфавите (за исключением j, z)
–Full_testing_dataset.zip (38,8 мб) https://drive.google.com/file/d/1urn66jntxcs-s_1kvrsh11pe3vbp3vd-/view?usp=sharing –extract и сохранение ~./ASl-rection/aSlml/– –-Pathract of Data To Pathognition ~./ASL-RECOGNITION/ASLML/IMAGES/FULL_TESTING_DATASET/-каталог должен иметь один суб-каталог для каждой буквы в алфавите (за исключением j, z)
11 - Создайте набор данных Landmark из Full_training_dataset Images - Пример: Изнутри ./ASL -RECOGNITY/ASLML/ - Внутри create_dataset.py, измените «Samplesizepercentage» на желаемую скорость дискретизации. По умолчанию установлено 100% всех изображений. - Python. Create_dataset.py - Вывод: в настоящее время работает над каталогом A… В настоящее время работает над каталогом B…… В настоящее время работает над Directory V… В настоящее время работает над каталогом Y ...
Выбранный размер выборки набора данных: 10% общее количество обработанных изображений (10% от полного набора данных): 8033 Успешные обнаружения (79,73359890451886%): 6405 Неудачные обнаружения: 1628 Обнаружение знакома
12 - Найдите лучшие параметры классификатора случайного леса и обучайте модель на наборе данных - Пример: из ~./ASL -Recognition/ASLML - Python. Train_classifier.py - Вывод: разделение данных на тестирование и обучение с 20,0%, зарезервированным для тестирования.
Начальный поиск сетки ... Подгонка 5 раз для каждого из 16 кандидатов, общая 80 подходит [CV] End Bootstrap = true, max_depth = none, min_samples_leaf = 1, min_samples_split = 2, n_estimators = 100; Общее время = 5,1S [CV] End Bootstrap = true, max_depth = none, min_samples_leaf = 1, min_samples_split = 2, n_estimators = 100; Общее время = 5,4 с… Общее время = 9,6S [cv] End Bootstrap = false, max_depth = 10, min_samples_leaf = 2, min_samples_split = 2, n_estimators = 200; Общее время = 9,2 с, вот лучшие параметры, найденные:
{'' bootstrap ': false,' max_depth ': none,' min_samples_leaf ': 1,' min_samples_split ': 2,' n_estimators ': 200} Отчет о классификации:
precision recall f1-score support
S 0.74 0.95 0.83 58
T 0.94 0.96 0.95 53
U 0.67 0.73 0.70 56
V 0.81 0.75 0.78 59
W 1.00 0.96 0.98 56
X 0.98 0.94 0.96 52
Y 0.97 0.97 0.97 58
accuracy 0.91 1281
Macro AVG 0,92 0,91 0,91 1281 взвешенные AVG 0,92 0,91 0,92 1281
91,49102263856362% образцов были классифицированы правильно
Время исполнения: 103.08926582336426 секунд
13 - Проверьте точность недавно созданной модели на новых данных тестирования - Пример: из ~./ASl -recognition/aSlml - python. OnferenceTester.py - Вывод: Файл изображения: hand2_a_dif_seg_2_cropped.jpeg Inside Classifier Не удалось обнаружить Landmarks в пользовательском изображении: hand2_a_dif_seg_2_crpegped.jpeegpegped.jpeegsped.jpeegsped.jpeegpegped.jpeegpegsped.jpeegpegsped.jpeegpegpegped.jpeegsped.jpeegsped.jpeegsped.jpeegpegpeg_seegsped.j
Файл изображения: a0001_test.jpg успешно обнаруженные достопримечательности в пользовательском изображении: a0001_test.jpg
Модель предсказала, что ARNAME - это правильное !!
Файл изображения: a0024_test.jpg успешно обнаружил достопримечательности в пользовательском изображении: a0024_test.jpg
Модель предсказала, что ARNAME - это правильное !! …
Файл изображения: hand3_y_dif_seg_5_cropped.jpeg успешно обнаружил достопримечательности в пользовательском изображении: hand3_y_dif_seg_5_cropped.jpeg
Модель предсказала, что y dirname: y правильно !!
Использование обученной модели RandomForestClassifer: Процент успешного обнаружения достопримечательностей: 69% процент успешных прогнозов букв Обнаружение: 76%
Общее количество доступных изображений тестирования: 2510 26% случайная выборка. Общее количество обработанных изображений: 622 Общее количество правильных прогнозов: 332 Общее количество неверных прогнозов: 103 Общее количество успешных выявлений достопримечательностей: 435 Общее количество неудачных обнаружений на достопримечательностях: 187
Используйте приложение
14 - Скопируйте вновь созданную модель в CGI -бин - пример: копировать 'aslmodel.job' из ' . ASL-RECOGINITY ASLML MODEL . ASL -RECOGINITY ASLLOCAL BUILD MODELIS '15 -ИЗ' ~. ASL -RECOGINITY ASLLOCAL BUILD 'DIRECTORY, запустите веб -сервер -Пример: Python -m http.server - -CGI 8990 -Вывод: 8990/).
Используйте приложение
1 - Откройте веб -браузер и получите доступ к веб -странице - Пример: http: // localhost: 8990 2 - Загрузите изображение жеста ASL.