ዝርዝር ሁኔታ:
ቪዲዮ: Opencv የፊት ለይቶ ማወቅ ፣ ስልጠና እና ዕውቅና 3 ደረጃዎች
2024 ደራሲ ደራሲ: John Day | [email protected]. ለመጨረሻ ጊዜ የተሻሻለው: 2024-01-30 07:30
OpenCV እንደ የመደብዘዝ ፣ የምስል ማደባለቅ ፣ ምስልን እንዲሁም የቪዲዮ ጥራትን ፣ ደፈናን ወዘተ የመሳሰሉትን መሰረታዊ የምስል ማቀናበሪያ ተግባሮችን በማከናወን በጣም የተወደደ ክፍት ምንጭ የኮምፒተር ራዕይ ቤተ-መጽሐፍት ነው ከምስል ማቀናበር በተጨማሪ የተለያዩ ቅድመ-ሥልጠና ጥልቅ ትምህርትን ይሰጣል። በእጅ ያሉ ቀላል ተግባሮችን ለመፍታት በቀጥታ ጥቅም ላይ ሊውሉ የሚችሉ ሞዴሎች።
ለ opencv ጭነት ይህንን አገናኝ ይጠቀሙ
www.instructables.com/id/Opencv-and-Python…
ደረጃ 1 - በእውነተኛ ሰዓት ቪዲዮ ውስጥ ፊትን መለየት
ለብዙ የፊት ማወቂያ ፕሮግራሞች google ን መፈለግ ይችላሉ እና የተገኙት ፊቶች እንደ ሥልጠና እና መሰየምን የመሳሰሉ ለተጨማሪ የምስል ማቀናበሪያ ነገሮች በአቃፊ ውስጥ መቀመጥ አለባቸው። እኛ 30 ናሙናዎችን እንሰበስባለን
ማስመጣት cv2
ቁጥርን እንደ np ያስመጡ
ማስመጣት os ማስመጣት sys
ካሜራ = cv2. VideoCapture (0)
faceCascade = cv2. CascadeClassifier ("haarcascade_frontalface_default.xml") #የእርስዎ harcascade ፋይል መንገድ ያክሉ
name = raw_input ("የእሱ/የእሷ ስም ማን ነው?")
#ሁሉም ፋይሎች በተጠቃሚዎች/ፕራሳድ/ሰነዶች/ምስሎች አቃፊ ስር ይቀመጣሉ
dirName = "/ተጠቃሚዎች/ፕራስሳድ/ሰነዶች/ምስሎች/" + ስም
ካልሆነ።
ቁጥር = 1
#30 ናሙናዎችን እንሰበስባለን
30 በሚቆጠርበት ጊዜ # ክፈፍ # ፍሬም = ፍሬም። ግራጫ [y: y + h ፣ x: x + w] fileName = dirName + "/" + name + str (count) + ".jpg" cv2.imwrite (fileName, roiGray) cv2.imshow ("ፊት" ፣ roiGray)) cv2.አራት ማዕዘን (ክፈፍ ፣ (x ፣ y) ፣ (x+w ፣ y+h) ፣ (0 ፣ 255 ፣ 0) ፣ 2) ቆጠራ+= 1 cv2. የምስል ማሳያ (‹ፍሬም› ፣ ፍሬም) ቁልፍ = cv2.ጠባቂ (1)
ቁልፍ ከሆነ == 27:
ሰበር
#ካሜራ። መልቀቅ ()
cv2. DestroyAllWindow ()
ደረጃ 2 የናሙና ምስሎችዎን ማሰልጠን
የፊት ለይቶ ማወቅ ከተጠናቀቀ በኋላ ምስሎቹን ለማሠልጠን መሄድ እንችላለን
አስመጣ osimport numpy እንደ np ከ PIL ማስመጣት Image import cv2 import pickle #import serial
#ser = serial. Serial ('/dev/ttyACM0' ፣ 9600 ፣ የእረፍት ጊዜ = 1)
faceCascade = cv2. CascadeClassifier ("haarcascade_frontalface_default.xml")
ማወቂያ = cv2.face. LBPHFaceRecognizer_create ()
baseDir = os.path.dirname (os.path.abspath (_ ፋይል_))
#በምስሎች አቃፊ ስር ምስሎቹን ያሠለጥኑ
imageDir = os.path.join (baseDir ፣ “ምስሎች”)
currentId = 1
labelIds = {} yLabels = xTrain = #ser.write ("ስልጠና…..". encode ())
ለ root ፣ dirs ፣ os.walk (imageDir) ውስጥ ያሉ ፋይሎች
በፋይሎች ውስጥ ለፋይሉ ያትሙ (ሥር ፣ ዳይርስ ፣ ፋይሎች) - ፋይል.endswith ("png") ወይም file.endswith ("jpg") ከሆነ: መንገድ = os.path.join (ሥር ፣ ፋይል) መለያ = os.path.basename (ሥር) ህትመት (መለያ)
በመለያ ውስጥ ካልተሰየመ
labelIds [መሰየሚያ] = የአሁኑን ህትመት (መሰየሚያ) የአሁኑን ኢድ += 1
id_ = labelIds [መለያ]
pilImage = Image.open (ዱካ)።
ለ (x ፣ y ፣ w ፣ h) በፊቶች
roi = imageArray [y: y+h ፣ x: x+w] xTrain.append (roi) yLabels.append (id_)
በክፍት ("መለያዎች" ፣ "wb") እንደ f:
pickle.dump (labelIds ፣ ረ) f.close ()
recognizer.train (xTrain ፣ np.array (yLabels))
recognizer.save ("trainer.yml") ህትመት (labelIds)
ደረጃ 3 ፊቶችን ማወቅ
ሥልጠናው ካለቀ በኋላ የሰለጠኑ ፊቶችዎን ማወቅ እንዲጀምር ከዚህ በታች ያለውን ኮድ ማካሄድ ይችላሉ
ማስመጣት osos.environ ['PYTHONINSPECT'] = '' 'ላይ' cv2 ማስመጣት numpy እንደ np አስመጪ #አስመጪ RPi. GPIO እንደ ጂፒኦ ከጊዜ ወደ ጊዜ እንቅልፍ
በክፍት ('መለያዎች' ፣ 'rb') እንደ f:
dicti = pickle.load (f) f.close ()
ካሜራ = cv2. VideoCapture (0)
faceCascade = cv2. CascadeClassifier ("haarcascade_frontalface_default.xml")
መታወቂያ = cv2.face. LBPHFaceRecognizer_create () recognizer.read ("trainer.yml")
ቅርጸ -ቁምፊ = cv2. FONT_HERSHEY_SIMPLEX
የመጨረሻው ="
#በካሜራ ውስጥ ለ ፍሬም
እውነት ሆኖ ሳለ - ret ፣ ፍሬም = ካሜራ። በፊቶች: roiGray = ግራጫ [y: y+h, x: x+w]
id_, conf = recognizer.predict (roiGray)
ለስም ፣ እሴት በ dicti.items ():
እሴት ከሆነ == id_: ህትመት (ስም) cv2.putText (ፍሬም ፣ ስም ፣ (x ፣ y) ፣ ቅርጸ -ቁምፊ ፣ 2 ፣ (0 ፣ 0 ፣ 255) ፣ 2 ፣ cv2. LINE_AA) ስም ከሆነ! = የመጨረሻ ፦ የመጨረሻ = ስም ከሆነ conf <= 70: cv2. አራት ማዕዘን (ፍሬም ፣ (x ፣ y) ፣ (x+w ፣ y+h) ፣ (0 ፣ 255 ፣ 0) ፣ 2)
cv2. ማሳያ ('ፍሬም' ፣ ፍሬም)
ቁልፍ = cv2.waitKey (1)
ቁልፍ ከሆነ == 27:
cv2. DestroyAllWindow ()
የሚመከር:
በ Raspberry Pi 4B ላይ የፊት ለይቶ ማወቅ በ 3 ደረጃዎች 3 ደረጃዎች
በ Raspberry Pi 4B ላይ የፊት ለይቶ ማወቅ በ 3 እርከኖች-በዚህ መመሪያ ውስጥ የሹንያፊትን ቤተመፃሕፍት በመጠቀም ከ Rasyaberry O/S ጋር Raspberry Pi 4 ላይ የፊት ለይቶ ማወቅን እናከናውናለን። ሹነፊታ የፊት መታወቂያ/ማወቂያ ቤተ -መጽሐፍት ነው። ፕሮጀክቱ ፈጣን የመለየት እና የማወቅ ፍጥነትን ለማሳካት ያለመ ነው
አበልካድባራ (የፊት ለይቶ ማወቅ የበር መቆለፊያ ስርዓት) - 9 ደረጃዎች
አቤልካድባራ (የፊት ለይቶ ማወቅ የበር መቆለፊያ ስርዓት) - በኳራንቲን ወቅት ዙሪያውን ተኝቼ ፣ ለቤት በር የፊት መታወቂያ በመገንባት ጊዜውን ለመግደል መንገድ ለማግኘት ሞከርኩ። እኔ አቤልካድባራ ብዬ ሰየመው - ይህም በአብራካድብራ መካከል ጥምረት ነው ፣ ደወሉን ብቻ የምወስድበት የደወል ደወል ያለው አስማታዊ ሐረግ። ሎልየን
MATLAB ቀላል የፊት ለይቶ ማወቅ 4 ደረጃዎች
MATLAB ቀላል የፊት ለይቶ ማወቅ - የዚህ አስተማሪዎች ዋና ዓላማ የምስል አሠራሩ ምን ያህል ቀላል እንደሆነ ማሳየት ነው ፣ በ MATLABFace ማወቅ እና መከታተያ እገዛ እና መከታተል አስፈላጊ እና ንቁ የምርምር መስክ ሆኖ ቆይቷል ፣ ስለዚህ ያብራራለሁ በጥበብ እንዴት ማድረግ እንደሚቻል
የፊት ለይቶ ማወቅ ስማርት መቆለፊያ በ LTE Pi HAT: 4 ደረጃዎች
የፊት ለይቶ ማወቂያ ዘመናዊ መቆለፊያ በ LTE Pi HAT: የፊት ለይቶ ማወቁ በሰፊው ጥቅም ላይ እየዋለ ነው ፣ ዘመናዊ ቁልፍን ለመሥራት ልንጠቀምበት እንችላለን
የፊት ለይቶ ማወቅ+እውቅና 8 ደረጃዎች (ከስዕሎች ጋር)
የፊት ለይቶ ማወቅ+ማወቂያ - ይህ ከካሜራ በ OpenCV አማካኝነት የፊት ለይቶ ማወቅ እና ዕውቅና የማስኬድ ቀላል ምሳሌ ነው። ማሳሰቢያ - እኔ ይህንን ፕሮጀክት ለሴንሰር ውድድር አደረግኩ እና ለመከታተል እና ለመገንዘብ ገጽታዎች ዳሳሽ እንደ ካሜራ ተጠቀምኩ። ስለዚህ ፣ የእኛ ግብ በዚህ ክፍለ ጊዜ ፣ 1. አናኮንዳ ጫን