![Opencv Нүүр илрүүлэх, сургах, таних: 3 алхам Opencv Нүүр илрүүлэх, сургах, таних: 3 алхам](https://i.howwhatproduce.com/images/006/image-16218-j.webp)
Агуулгын хүснэгт:
2025 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2025-01-23 15:00
![Opencv Нүүр илрүүлэх, сургалт, таних Opencv Нүүр илрүүлэх, сургалт, таних](https://i.howwhatproduce.com/images/006/image-16218-1-j.webp)
OpenCV бол нээлттэй эх сурвалжтай компьютерийн харааны номын сан бөгөөд зураг боловсруулахаас гадна бүдгэрүүлэх, зураг холих, дүрс сайжруулах, видео чанар, босго гэх мэт үндсэн анхан шатны даалгавруудыг гүйцэтгэхэд маш алдартай бөгөөд зураг боловсруулахаас гадна урьдчилан бэлтгэгдсэн төрөл бүрийн гүнзгий суралцах боломжийг олгодог. энгийн даалгавруудыг шийдвэрлэхэд шууд ашиглаж болох загварууд.
opencv суулгахын тулд энэ холбоосыг ашиглана уу
www.instructables.com/id/Opencv-and-Python…
Алхам 1: Бодит цагийн видеогоор нүүрээ илрүүлэх
Та нүүр царай илрүүлэх олон програмыг google -ээс хайж олох боломжтой бөгөөд илрүүлсэн царайг фолдерт хадгалж, сургалт, тэмдэглэгээ гэх мэт дүрсийг цаашид боловсруулах боломжтой болно. Бид 30 дээж цуглуулах гэж байна
cv2 импортлох
np гэж numpy импортлох
импортлох систем импортлох
камер = cv2. VideoCapture (0)
faceCascade = cv2. CascadeClassifier ("haarcascade_frontalface_default.xml") #өөрийн файлын замыг нэмнэ үү
name = raw_input ("Түүний нэр хэн бэ?")
#бүх файлыг хэрэглэгчид/prasad/Documents/images хавтсанд хадгалах болно
dirName = "/Users/prasad/Documents/images/" + name
хэвлэх (dirName) байхгүй бол os.path.exists (dirName): os.makedirs (dirName) хэвлэх ("Лавлах үүсгэсэн") өөр: хэвлэх ("Нэр аль хэдийн байна") sys.exit ()
тоолох = 1
#бид 30 дээж цуглуулах гэж байна
30 тоо тоолоход: break # frame = frame.array gray = cv2.cvtColor (frame, cv2. COLOR_BGR2GRAY) faces = faceCascade.detectMultiScale (саарал, 1.5, 5) нүүрний (x, y, w, h) хувьд: roiGray = саарал [y: y + h, x: x + w] fileName = dirName + "/" + name + str (count) + ".jpg" cv2.imwrite (fileName, roiGray) cv2.imshow ("нүүр", roiGray) cv2.rectangle (frame, (x, y), (x+w, y+h), (0, 255, 0), 2) count+= 1 cv2.imshow ('frame', frame) key = cv2.waitKey (1)
хэрэв түлхүүр == 27:
завсарлага
#camera.release ()
cv2.destroyAllWindows ()
Алхам 2: Дээж зургуудаа сургах
Нүүрний илрүүлэлт дууссаны дараа бид зургуудыг сургахаар явж болно
PIL импортоос nim байдлаар osimport numpy импортлох Импорт cv2 импортлох даршилсан импорт #импорт сериал
#ser = serial. Serial ('/dev/ttyACM0', 9600, timeout = 1)
faceCascade = cv2. CascadeClassifier ("haarcascade_frontalface_default.xml")
танигч = cv2.face. LBPHFaceRecognizer_create ()
baseDir = os.path.dirname (os.path.abspath (_ file_))
#зургийн зургийн хавтасны доор сургах
imageDir = os.path.join (baseDir, "зураг")
currentId = 1
labelIds = {} yLabels = xTrain = #ser.write ("Сургалт…..". кодлох ())
os.walk дахь root, dirs, файлуудын хувьд (imageDir):
файл доторх файлыг хэвлэх (root, dirs, files): print (file) if file.endswith ("png") or file.endswith ("jpg"): path = os.path.join (root, file) label = os.path.basename (root) хэвлэх (шошго)
labelIds дээр шошго оруулаагүй бол:
labelIds [label] = currentId print (labelIds) currentId += 1
id_ = labelIds [шошго]
pilImage = Image.open (path).convert ("L") imageArray = np.array (pilImage, "uint8") нүүр = faceCascade.detectMultiScale (imageArray, scaleFactor = 1.1, minNeighbors = 5)
(x, y, w, h) нүүрний хувьд:
roi = imageArray [y: y+h, x: x+w] xTrain.append (roi) yLabels.append (id_)
нээлттэй хэлбэрээр ("шошго", "wb") f хэлбэрээр:
даршилсан хаягдал (labelIds, f) f.close ()
танигч.трэйн (xTrain, np.array (yLabels))
хүлээн авагч.save ("trainer.yml") хэвлэх (labelIds)
Алхам 3: Нүүр царайг таних
Сургалт дууссаны дараа та доорх кодыг ажиллуулж болох бөгөөд ингэснээр таны бэлтгэгдсэн царайг таних болно
импорт osos.environ ['PYTHONINSPECT'] = 'дээр' импорт cv2 -ийг np импорт даршилсан байдлаар импортлох
нээлттэй байдлаар ('шошго', 'rb') f хэлбэрээр:
dicti = даршилсан. ачаалал (f) f.close ()
камер = cv2. VideoCapture (0)
faceCascade = cv2. CascadeClassifier ("haarcascade_frontalface_default.xml")
танигч = cv2.face. LBPHFaceRecognizer_create () танигч. унших ("trainer.yml")
фонт = cv2. FONT_HERSHEY_SIMPLEX
сүүлийн = ''
#камер доторх хүрээ.capture_continuous (rawCapture, format = "bgr", use_video_port = True):
while True: ret, frame = camera.read () саарал = cv2.cvtColor (frame, cv2. COLOR_BGR2GRAY) нүүрэн дээр: roiGray = саарал [y: y+h, x: x+w]
id_, conf = танигч. урьдчилан таамаглах (roiGray)
нэрийн хувьд dicti.items () дэх утга:
if value == id_: print (name) cv2.putText (frame, name, (x, y), font, 2, (0, 0, 255), 2, cv2. LINE_AA) if name! = last: last = conf <= 70 бол нэр: cv2. тэгш өнцөгт (хүрээ, (x, y), (x+w, y+h), (0, 255, 0), 2
cv2.imshow ('хүрээ', хүрээ)
түлхүүр = cv2.waitKey (1)
хэрэв түлхүүр == 27:
завсарлага cv2.destroyAllWindows ()
Зөвлөмж болгож буй:
Abellcadabra (Нүүр таних хаалганы түгжээний систем): 9 алхам
![Abellcadabra (Нүүр таних хаалганы түгжээний систем): 9 алхам Abellcadabra (Нүүр таних хаалганы түгжээний систем): 9 алхам](https://i.howwhatproduce.com/images/002/image-5397-j.webp)
Абеллкадабра (Нүүр таних хаалганы түгжээний систем): Хорио цээрийн дэглэм тогтоож байхдаа гэрийнхээ хаалганы нүүр таних төхөөрөмжийг ашиглан цагаа үрэх арга замыг олохыг хичээв. Би үүнийг Абеллкадабра гэж нэрлэсэн бөгөөд энэ нь зөвхөн хонх дардаг хаалганы хонхтой шидэт хэллэг болох Абракадабрагийн хослол юм. Хэхэ
Нүүр таних ба таних - OpenCV Python болон Arduino ашиглан Arduino Face ID: 6 алхам
![Нүүр таних ба таних - OpenCV Python болон Arduino ашиглан Arduino Face ID: 6 алхам Нүүр таних ба таних - OpenCV Python болон Arduino ашиглан Arduino Face ID: 6 алхам](https://i.howwhatproduce.com/images/007/image-19436-j.webp)
Нүүр таних ба таних | OpenCV Python болон Arduino ашиглан Arduino Face ID: Нүүр царай таних нь орчин үеийн гар утасны хамгийн чухал онцлогуудын нэг юм. Тиймээс надад " Arduino төслийнхөө нүүр царайг таних боломжтой юу " хариулт нь тийм … Миний аялал дараах байдлаар эхэлсэн: Алхам 1: Бидэнд хандах
Opencv нүүр таних: 4 алхам
![Opencv нүүр таних: 4 алхам Opencv нүүр таних: 4 алхам](https://i.howwhatproduce.com/images/003/image-7376-11-j.webp)
Opencv царай таних: Өнөөдөр нүүр царай таних нь ухаалаг гар утас, олон электрон хэрэгслүүд гэх мэт олон төрлийн хэрэглээнд түгээмэл хэрэглэгддэг зүйл юм
Нүүр илрүүлэх+таних: 8 алхам (зурагтай)
![Нүүр илрүүлэх+таних: 8 алхам (зурагтай) Нүүр илрүүлэх+таних: 8 алхам (зурагтай)](https://i.howwhatproduce.com/images/001/image-619-124-j.webp)
Нүүр илрүүлэх+таних: Энэ бол камераас OpenCV ашиглан нүүр таних, таних ажиллуулах энгийн жишээ юм. ТАЙЛБАР: Би энэ төслийг сенсорын тэмцээнд зориулж хийсэн бөгөөд камерыг таних, мэдрэх мэдрэмтгий болгон камерыг ашигласан
Raspberry Pi Zero ба Opencv -ийн тусламжтайгаар нүүр ба нүдийг илрүүлэх: 3 алхам
![Raspberry Pi Zero ба Opencv -ийн тусламжтайгаар нүүр ба нүдийг илрүүлэх: 3 алхам Raspberry Pi Zero ба Opencv -ийн тусламжтайгаар нүүр ба нүдийг илрүүлэх: 3 алхам](https://i.howwhatproduce.com/images/001/image-692-82-j.webp)
Raspberry Pi Zero ба Opencv -ийн тусламжтайгаар нүүр ба нүдний илрүүлэлт: Энэ зааварчилгаанд та бөөрөлзгөнө pi болон opencv ашиглан нүүр, нүдийг хэрхэн яаж илрүүлж болохыг харуулах болно. Энэ бол миний opencv дээрх анхны зааварчилгаа юм. Би бөөрөлзгөнө дээр нээлттэй cv -ийг тохируулахын тулд олон зааварчилгааг дагасан боловч тэр болгонд алдаа гаргадаг байсан. Ямар ч байсан би