
Мазмұны:
2025 Автор: John Day | [email protected]. Соңғы өзгертілген: 2025-01-23 14:51

Python және opencv тілдеріндегі Haar классификаторлары өте күрделі, бірақ оңай тапсырма.
Біз жиі кескінді анықтау мен жіктеу проблемаларына тап боламыз. Ең жақсы шешім - бұл өз классификаторын құру. Мұнда біз бірнеше командалармен және қарапайым, бірақ қарапайым питондық бағдарламалармен суреттердің классификаторларын жасауды үйренеміз
Жіктеу көптеген теріс және оң бейнелердің болуын талап етеді, ал негативтерде қажетті объект жоқ, ал позитивтерде анықталатын объекті бар.
2000 -ға жуық негативтер мен позитивтер қажет. Питон бағдарламасы кескінді сұр реңкке және қолайлы өлшемге түрлендіреді, осылайша жіктеуіштер жасау үшін оңтайлы уақыт алады.
1 -қадам: бағдарламалық қамтамасыз ету қажет
Жеке классификаторды құру үшін сізге келесі бағдарламалар қажет
1) OpenCV: мен қолданған нұсқа 3.4.2. нұсқасы Интернетте оңай қол жетімді.
2) Python: 3.6.2 нұсқасы қолданылады. Python.org сайтынан жүктеуге болады
Сонымен қатар сізге веб -камера қажет (әрине).
2 -қадам: суреттерді жүктеу
Бірінші қадам - жіктелетін объектінің нақты суретін алу.
Көлемі өте үлкен болмауы керек, себебі компьютерді өңдеуге көп уақыт кетеді. Мен 50 -ден 50 -ге дейін өлшемді алдым.
Содан кейін біз жағымды және жағымсыз суреттерді жүктейміз. Сіз оларды Интернеттен таба аласыз. Бірақ біз суреттерді «https://image-net.org» сайтынан жүктеу үшін питон кодын қолданамыз
Содан кейін біз суреттерді сұр реңкке және қалыпты өлшемге түрлендіреміз. Бұл кодексте мүлде орындалады. Код сонымен қатар кез келген ақаулы суретті жояды
Қазіргі уақытта сіздің каталогта объект бейнесі болуы керек, мысалы watch5050-j.webp
Егер деректер қалтасы жасалмаса, оны қолмен жасаңыз
Python коды.py файлында берілген
3 -қадам: OpenCV -де оң үлгілерді құру


Енді opencv_createsamples каталогына өтіп, жоғарыда аталған мазмұнды қосыңыз
Командалық шақыруда opencv_createsamples мен opencv_traincascade қосымшаларын табу үшін C: / opencv342 / build / x64 / vc14 / bin өтіңіз.
енді келесі пәрмендерді орындаңыз
opencv_createsamples -img watch5050-j.webp
Бұл пәрмен 1950 объектісінің оң үлгілерін құруға арналған және дәл ақпарат info.lst оң суреттердің сипаттамасы осындай болуы керек 0001_0014_0045_0028_0028-j.webp
Енді қалтада бар
ақпарат
neg images қалтасы
bg.txt файлы
бос деректер қалтасы
4 -қадам: Позитивті векторлық файл құру

Енді позитивті суреттерге шифрлау файлын беретін жолды беретін оң векторлық файл жасаңыз
Келесі пәрменді қолданыңыз
opencv_createsamples -info info/info.lst -ном 1950 -w 20 -h 20 -vec позитивті.vec
Қазіргі уақытта каталогтың мазмұны келесідей болуы керек:
-жоқ
---- negimages.jpg
--opencv
-ақпарат
-деректер
--позитивті және т.б.
--bg.txt
--watch5050-j.webp
5 -қадам: жіктеуішті оқыту



Енді haar каскадын үйретуге және xml файлын құруға мүмкіндік беріңіз
Келесі пәрменді қолданыңыз
opencv_traincascade -мәліметтер -vec positives.vec -bg bg.txt -numPos 1800 -numNeg 900 -numStages 10 -w 20 -h 20
Кезеңдер 10 Кезеңдерді жоғарылату көп өңдеуді қажет етеді, бірақ жіктеуіш тиімдірек.
Енді haarcascade құрылды. Дайындар қалтасын ашуға екі сағаттай уақыт кетеді, онда сіз cascade.xml таба аласыз Бұл құрылған классификатор
6 -қадам: жіктеуішті тексеру
Деректер қалтасы жоғарыдағы суретте көрсетілгендей файлдарды қамтиды.
Классификаторды жасағаннан кейін жіктеуіштің жұмыс істейтінін немесе жұмыс істемейтінін object_detect.py бағдарламасын іске қосу арқылы көреміз. Classifier.xml файлын python каталогына қоюды ұмытпаңыз.
7 -қадам: Арнайы алғыс
Мен мұнда керемет питон бағдарламашысы Sentdex -ке алғыс айтқым келеді.
Оның жоғарыда аталған аты бар ютубтың аты бар және маған көп көмектесті, бұл сілтеме бар
Кодтың көп бөлігі sentdex -тен көшірілген. Sentdex -тен көп көмек алғанымен, мен әлі де көптеген қиындықтарға тап болдым. Мен өз тәжірибеммен бөліскім келді.
Бұл табылмайтын материал сізге көмектесті деп үміттенемін !!! Толығырақ күтіңіз.
BR
Тахир Ул Хак
Ұсынылған:
OpenCV көмегімен Python -да түсті анықтау: 8 қадам

OpenCV көмегімен Python -да түсті анықтау: Сәлеметсіз бе! Бұл нұсқаулық OpenCV кітапханасын қолдана отырып, питондағы суреттен белгілі бір түсті қалай алу керектігін түсіндіру үшін қолданылады. Егер сіз бұл техниканы жаңадан білсеңіз, алаңдамаңыз, бұл нұсқаулықтың соңында сіз өзіңіздің жеке түсіңізді бағдарламалай аласыз
Arduino UNO көмегімен дронды қалай жасауға болады - Микроконтроллер көмегімен квадрокоптер жасаңыз: 8 қадам (суреттермен)

Arduino UNO көмегімен дронды қалай жасауға болады | Микроконтроллер көмегімен квадрокоптер жасаңыз: Кіріспе Менің Youtube каналыма кіріңіз. Drone - бұл өте қымбат гаджет (өнім). Бұл жазбада мен оны қалай арзан бағамен жасайтынымды талқылаймын. Өз қолыңызбен қалай арзан бағамен жасауға болады … Үндістанда барлық материалдар (қозғалтқыштар, ЭСК
GET1033 Python кодталған кескін процессоры: 5 қадам

GET1033 Python кодталған кескін процессоры: Бұл жоба менің модульім үшін GET1033 есептік медиа сауаттылығын зерттейтін питонмен кодталған сурет процессорымды құру туралы. Алдымен пайдаланушы өзінің фотосуретін енгізуі керек, содан кейін қалаған сүзгілерді таңдауы керек. Мен 9 сүзгі жасадым, олар
Arduino Uno: Visuino көмегімен ILI9341 TFT сенсорлық экран қалқанындағы нүктелік кескін анимациясы: 12 қадам (суреттермен)

Arduino Uno: Visuino көмегімен ILI9341 TFT сенсорлы дисплей қалқанындағы Bitmap анимациясы: ILF9341 негізіндегі TFT сенсорлық экран қалқандары Arduino үшін өте арзан дисплей қалқандары болып табылады. Visuino ұзақ уақыт бойы оларға қолдау көрсетті, бірақ мен оларды пайдалану туралы оқулық жазуға ешқашан мүмкіндік алған жоқпын. Жақында сұрағандар аз болды
Лазерлік кескін проекторы: 7 қадам (суреттермен)

Лазерлік кескін проекторы: Бұл қалыпты жарықтың орнына жасыл лазерді қолданатын портативті кескін проекторын құру бойынша негізгі нұсқаулар. Лазер кескіндерді үлкен қашықтыққа жіберуге мүмкіндік береді және фокустауды қажет етпейді - ол әрқашан назарда болады