Mundarija:
2025 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2025-01-13 06:58
Zamonaviy dunyoda biz QR-kod va shtrix-kodni deyarli hamma joyda ishlatamiz, mahsulotni qadoqlashdan tortib to onlayn to'lovlarga qadar va hozir biz menyuni ko'rish uchun hatto restoranda ham QR-kodlarni ko'ramiz.
Shubhasiz, bu hozir katta fikr. Lekin siz hech qachon bu QR -kod qanday ishlashini yoki u qanday skanerlanishini va biz kerakli ma'lumotlarni olayotganimizni hech o'ylab ko'rganmisiz? Agar bilmasangiz, javob uchun to'g'ri joydasiz.
Ushbu qo'llanmada siz Python va OpenCV yordamida QR kodli skanerni yutib olishni o'rganasiz
Ta'minot:
- Python (3.6, 3.7, 3.8 tavsiya etiladi)
- OpenCV kutubxonasi
- Pyzbar kutubxonasi
1 -qadam: 1 -qadam: kutubxonalarni import qilish
Keling, kerakli kutubxonalarni import qilishdan boshlaylik.
Shunday qilib, biz 3 ta kutubxonadan foydalanamiz
1. OpenCV
2. Noqulay
3. Pyzbar
2 -qadam: 2 -qadam: Veb -kameraga kirish
Bu erda biz OpenCV -dan VideoCapture funktsiyasidan foydalangan holda veb -kameramizga kiramiz, shuningdek chiqish oynamizning kengligi va balandligini o'rnatamiz.
Bu erda muhim nuqta shundaki, agar siz ichki veb -kamerangizdan foydalansangiz, VideoCapture funktsiyasida 0 -ni, agar siz exteranl veb -kamerasini ishlatayotgan bo'lsangiz, 1 -raqamni o'tkazing.
Endi 6 -qatorda biz chiqish oynamiz balandligini 640 deb belgilaymiz (3 balandlik uchun ishlatiladi)
7 -qatorda biz chiqish oynasining balandligini 480 deb belgilaymiz (4 balandlik uchun ishlatiladi)
3 -qadam: 3 -qadam: Kadrlarni o'qish
Veb -kameradan kadrlarni o'qish juda oddiy. Vaqt tsiklini qo'shish kifoya qiladi va ichida loop ikkita o'zgaruvchini yaratadi, ya'ni ret va ramka "cap.read ()" yordamida freymlarni o'qiydi.
Endi sizning barcha ramkalaringiz o'zgaruvchan "ramka" da saqlanadi.
4 -qadam: 4 -qadam: Ma'lumotlarni shtrix -koddan o'qish
Endi biz shtrix -koddan ma'lumotlarni o'qiy oladigan for loop yaratamiz.
Shunday qilib, biz QR -kod ma'lumotlarini dekodlash uchun import qilingan "dekodlash" dan foydalanmoqchimiz
va biz uni "myData" o'zgaruvchisida saqlaymiz va ma'lumotlarning to'g'riligini tekshirish uchun chop etamiz
5 -qadam: 5 -qadam: QR kod atrofida to'rtburchaklar chizish va ma'lumotlarni ko'rsatish
Shunday qilib, avval biz pts o'zgaruvchini yaratamiz, bu bizga QR kodimizning 4 burchak nuqtasini beradi
Endi bu nuqtalardan foydalanib, biz QR kodimiz atrofida 16-18 qatorda ko'rsatilgandek to'rtburchaklar hosil qilamiz
Matnni ko'rsatish uchun bizning ma'lumotlarimiz saqlanadigan myData o'zgaruvchisi ishlatiladi
6 -qadam:
Va nihoyat, biz OpenCV -da "imshow" funktsiyasidan foydalanib, o'z ramkamizni ko'rsatmoqdamiz
22-23-satrda biz "q" tugmachasini bossak, dastur tugashini dasturlashtirganmiz