LEARN OPENCV in 3 HOURS with Python | Including 3xProjects | Computer Vision

แชร์
ฝัง
  • เผยแพร่เมื่อ 7 พ.ค. 2024
  • In this video, we are going to learn everything required to get started with OpenCV in Python. We will be using Python since it is one of the most popular programming languages. And it has opened numerous job opportunities in various sectors. We will start from the installation process right up to creating exciting projects such as detecting colors, shapes humans, and even vehicle number plates. So If you are a beginner don't worry this course is for you. We will skip all the boring theory stuff and focus on the practical implementation. So you can get the computer vision skill set you have always wanted in your CV. By the end of the course, you will become familiar with the core principle of OpenCV and apply different techniques to solve real-world problems using computer vision.
    🚀🚀 My Urdu/Hindi AI TH-cam Channel 🚀🚀
    / @murtazahassan01
    Code & Text Based Version:
    www.computervision.zone/cours...
    Premium Courses:
    ✔️ Computer Vision Game Development Course:
    bit.ly/3ttLZ2s
    ✔️ Computer Vision with Arduino Course:
    bit.ly/3wzLB4m
    ✔️ Advanced Drone Programming Course:
    bit.ly/3qs3v5g
    ✔️ Learn to Build Computer Vision Mobile Apps:
    bit.ly/3uioY1J
    ✔️ Jetson Nano Premium Course:
    bit.ly/3L8uIlF
    ⚙️⚙️⚙️--My Gear - ⚙️⚙️⚙️
    👉 Complete Gear 💈: www.computervision.zone/tech-...
    👉 My PC Specs 🖥️: www.computervision.zone/tech-...
    👉 My Video Shooting Gear📽️ : www.computervision.zone/tech-...
    👉 My Laptops 💻: www.computervision.zone/tech-...
    👉 Educational Products🧑‍🎓: www.computervision.zone/tech-...
    👉 TH-cam Starter Kit 🔴: www.computervision.zone/tech-...
    Follow Me:
    TikTok: bit.ly/3Vo76OQ
    Facebook Group: bit.ly/3irDcb7
    Discord: bit.ly/3JvyxAM
    Facebook Page: bit.ly/3IvpU7W
    Instagram : bit.ly/3NdGME3
    Website: bit.ly/3ICFTS0
    Github: bit.ly/3woU6PS
    #ComputerVision
    #OpenCV
    #CVZone
    Time Stamps:
    00:00 Intro
    2:17 Introduction to Images
    4:37 Installations
    9:09 Chapter 1
    17:01 Chapter 2
    27:31 Chapter 3
    34:12 Chapter 4
    44:59 Chapter 5
    50:04 Chapter 6
    56:14 Chapter 7
    1:15:37 Chapter8
    1:40:31 Chapter 9
    1:46:03 Project 1
    2:15:45 Project 2
    2:56:34 Project 3
    Download Links:
    PyCharm Community edition: www.jetbrains.com/pycharm/dow...
    Python: 3.7.6: www.python.org/downloads/rele...

ความคิดเห็น • 2.2K

  • @murtazasworkshop
    @murtazasworkshop  3 ปีที่แล้ว +287

    So what TUTORIALS AND PROJECTS would you like to see next ? Comment bellow and I will create the ideas with the highest votes. And thank you for all the love and support.

    • @mr.mksaid4525
      @mr.mksaid4525 3 ปีที่แล้ว +59

      first . thank you very very much ..this is a great work,...second i wish from you to make a tutorial for self diving car using neural network .finally all the best for everyone

    • @actionkey8042
      @actionkey8042 3 ปีที่แล้ว +3

      goood video and jobs ;)

    • @Ramucho25
      @Ramucho25 3 ปีที่แล้ว +5

      Hi, thank you very much for this long but useful tutorial. I must say I'm a newbie with opencv and python. I'd like to know if it would be possible to decode the hour, minutes and seconds of analog watches using opencv. I've this professionnal project. We develop such a program at work but using proprietary library and we have now some limitations with it : it doesn't work with 64bit Windows and due to a bug that we found in the library we can't update Windows and we do need to pay to get the corrected version of the library ! Damned ! So it would great if we could do that with opencv and so use another OS. By the way, we need to decode a datamatrix code to recognize the watch we're processing (just a number). For each watch, we define some templates (ROI) for the watch face, the hour hand, the minute hand and the second hand (the center ans axis of each and the edges) and then the program decodes the hour. Do you think that this possible to do with opencv ? Regards

    • @preranasharma429
      @preranasharma429 3 ปีที่แล้ว +4

      Satellite image segmentation

    • @vincentjr8013
      @vincentjr8013 3 ปีที่แล้ว +5

      I want to know who is that girl in video thumnail.

  • @yangyong6245
    @yangyong6245 3 ปีที่แล้ว +810

    I'm OpenCV expert. I recommend this video perfectly as expert's view.

    • @murtazasworkshop
      @murtazasworkshop  3 ปีที่แล้ว +68

      Thank you

    • @spamcolector
      @spamcolector 3 ปีที่แล้ว +11

      Are you really watched all video?

    • @nishikantmundokar228
      @nishikantmundokar228 3 ปีที่แล้ว +10

      can you tell how to resolve this error: OpenCV(4.3.0) /io/opencv/modules/objdetect/src/cascadedetect.cpp:1689: error: (-215:Assertion failed) !empty() in function 'detectMultiScale'
      2

    • @voltifer5267
      @voltifer5267 3 ปีที่แล้ว +4

      Микола Васькевич английский выучи и потом пиши

    • @garukaws
      @garukaws 3 ปีที่แล้ว +9

      @@nishikantmundokar228 THis is what I did to fix the same issue.
      cap = cv2.VideoCapture(r'yourFullPath\test_video.mp4')
      #cap = cv2.VideoCapture(0)
      cap.set(3,640)
      cap.set(4,480)
      cap.set(10,100)
      while True:
      success, img = cap.read()
      print(success)
      if success:
      cv2.imshow("Output", img)
      cv2.waitKey(1)
      if cv2.waitKey(1) & 0xFF == ord('q'):
      break
      else:
      break
      cap.release()
      cv2.destroyAllWindows()

  • @cyenblue
    @cyenblue 3 ปีที่แล้ว +745

    2:17 Introduction to Images
    4:37 Installations
    9:09 Read images, videos and webcam
    17:01 Basic processing of image
    27:31 Resizing and cropping
    34:12 Adding shapes and text to image
    44:59 Warping perspective
    50:06 Image stacking
    56:15 Colour detection
    - 58:41 Trackbars
    1:15:38 Contouring and shape detection
    - 1:30:51 Bounding box
    1:40:31 Face detection with OpenCV Cascades
    1:46:03 Project 1 - Virtual painting
    2:15:45 Project 2 - Document scanner
    2:56:34 Project 3

  • @furkansenocak6824
    @furkansenocak6824 3 ปีที่แล้ว +2

    dude i just discovered your channel and i cant believe that there are so many useful videos about opencv in even all youtube lol. you are a walking treasure please keep up...

  • @isurucumaranathunga
    @isurucumaranathunga 2 ปีที่แล้ว +2

    Thank you so much for this valuable course. I was new to Open cv and It took me 3 days to go through this video completely. Now I think I will be able to go through your other projects effectively. Thank you so much Murtaza.

  • @alexsonchu3268
    @alexsonchu3268 4 ปีที่แล้ว +194

    just 1 video to clear all the confusion I had in years. you deserve more then 1 like.
    thanks so much.

    • @murtazasworkshop
      @murtazasworkshop  4 ปีที่แล้ว +17

      Thank you for your kind words. I am glad the video was of help.

    • @curious_one1156
      @curious_one1156 3 ปีที่แล้ว +6

      @@murtazasworkshop
      This needs to be on free code camp.
      Make your channel more popular by slightly diversifying your content, and video lengths.

    • @RohitSharma-jp4nc
      @RohitSharma-jp4nc 3 ปีที่แล้ว

      couldn't say better!!!!

    • @varuncontractor2697
      @varuncontractor2697 3 ปีที่แล้ว

      Alexson Chu, you just articulated what I was feeling. My 1000 likes for the creator of this video!!! Awesome.............

  • @lamedev1342
    @lamedev1342 3 ปีที่แล้ว +15

    It's nice how he is so friendly when explaining like even intermediate programmers don't have trouble he doesn't use such huge complex words. It's good for that reason as beginners learn easier that way.

  • @kuvar23
    @kuvar23 3 ปีที่แล้ว +17

    You are amazing Martaza. Your teaching skills are probably one of the best on youtube. I hope you're channel grows. Thank you for the free information and tutorials. Wish you the best!

  • @dsk9963
    @dsk9963 3 ปีที่แล้ว +19

    Never expected such a organized educational video online for free. Thanks!

    • @murtazasworkshop
      @murtazasworkshop  3 ปีที่แล้ว +4

      Glad it was helpful!

    • @joelthomas8617
      @joelthomas8617 11 หลายเดือนก่อน

      ​@@murtazasworkshop sir what are the prerequisites for this video

  • @nandinimalviya6210
    @nandinimalviya6210 3 ปีที่แล้ว +8

    A big THANK YOU! I have my final project submission in a month, it's a virtual keyboard, it's not mine, and i was having difficulty understanding the openCV and numpy functions, browsed through various videos, yours is undoubtedly the best one, now i feel like i can make a whole project just by myself!!!!!!!!!!!

  • @shanepython
    @shanepython 3 ปีที่แล้ว +119

    Possibly the best tutorial I've ever watched and I watch a TON of tutorials. You have a real gift in being able to instruct while being concise. Thank you for sharing and teaching.

    • @murtazasworkshop
      @murtazasworkshop  3 ปีที่แล้ว +20

      Glad it was helpful! and thank you for your kind words

    • @mbn-code
      @mbn-code 3 ปีที่แล้ว +2

      same lol and so meny of the other videos dident work lol

    • @franksaruhan
      @franksaruhan ปีที่แล้ว +1

      Where are the function he refers?

    • @saumilgupta2383
      @saumilgupta2383 ปีที่แล้ว

      how u watched pls help me
      i didnt understand he was just writing the code and not explaining also i have watched till chapter 2 only and i didnt felt i have learned something

  • @brainfreeze77
    @brainfreeze77 3 ปีที่แล้ว +10

    Dude, your channel is like a hidden gem. Great stuff.

  • @zanivanusa7855
    @zanivanusa7855 3 ปีที่แล้ว +8

    thank you, the best tutorial i have ever watched!!!

  • @egomalego
    @egomalego 3 ปีที่แล้ว +298

    Heres that function he put in chapter 6 for Joining Images from his website:
    def stackImages(scale,imgArray):
    rows = len(imgArray)
    cols = len(imgArray[0])
    rowsAvailable = isinstance(imgArray[0], list)
    width = imgArray[0][0].shape[1]
    height = imgArray[0][0].shape[0]
    if rowsAvailable:
    for x in range ( 0, rows):
    for y in range(0, cols):
    if imgArray[x][y].shape[:2] == imgArray[0][0].shape [:2]:
    imgArray[x][y] = cv2.resize(imgArray[x][y], (0, 0), None, scale, scale)
    else:
    imgArray[x][y] = cv2.resize(imgArray[x][y], (imgArray[0][0].shape[1], imgArray[0][0].shape[0]), None, scale, scale)
    if len(imgArray[x][y].shape) == 2: imgArray[x][y]= cv2.cvtColor( imgArray[x][y], cv2.COLOR_GRAY2BGR)
    imageBlank = np.zeros((height, width, 3), np.uint8)
    hor = [imageBlank]*rows
    hor_con = [imageBlank]*rows
    for x in range(0, rows):
    hor[x] = np.hstack(imgArray[x])
    ver = np.vstack(hor)
    else:
    for x in range(0, rows):
    if imgArray[x].shape[:2] == imgArray[0].shape[:2]:
    imgArray[x] = cv2.resize(imgArray[x], (0, 0), None, scale, scale)
    else:
    imgArray[x] = cv2.resize(imgArray[x], (imgArray[0].shape[1], imgArray[0].shape[0]), None,scale, scale)
    if len(imgArray[x].shape) == 2: imgArray[x] = cv2.cvtColor(imgArray[x], cv2.COLOR_GRAY2BGR)
    hor= np.hstack(imgArray)
    ver = hor
    return ver

    • @saahmad93
      @saahmad93 3 ปีที่แล้ว +1

      I am not able to install the library (OpebCvPython),Could you help me please

    • @saahmad93
      @saahmad93 3 ปีที่แล้ว

      ERROR: Command errored out with exit status 1:

    • @egomalego
      @egomalego 3 ปีที่แล้ว

      @@saahmad93 Make sure you're using the correct project interpreter. You might be missing the pg_config executable but I can't be certain because I can't see the entire error code. Try looking at Stack Overflow for help as there have most likely been others with the same or similar issue.

    • @bigboi7140
      @bigboi7140 3 ปีที่แล้ว +1

      @@saahmad93 Also this is very buggy in other IDEs like VSCode so just use PyCharm

    • @shourovdip3706
      @shourovdip3706 3 ปีที่แล้ว +11

      i was really looking for these...thanxxx :D :D

  • @seekergx8096
    @seekergx8096 3 ปีที่แล้ว +6

    Man thank you so much. I've spent all of my Machine Learning studies working with theory, Random Forests, and Linear + Logistic Regression. Getting to finally break into computer vision thanks to someone who knows what they're doing is huge, I appreciate you. I haven't finished your whole playlist yet so I can't recommend anything sadly, but something I am interested in making is a distance detector. Basically a computer vision application that shoots out one "laser" and detects the distance at that lasers end point.

    • @aliejaz1240
      @aliejaz1240 ปีที่แล้ว

      I am working on something similar. Have you developed something like that?

  • @ethanspitips5903
    @ethanspitips5903 3 ปีที่แล้ว

    Thank you for compressing all this useful OpenCV knowledge into such a short tutorial!! Very helpful

  • @hoangkaka9972
    @hoangkaka9972 2 ปีที่แล้ว

    Very clear explanations and careful step-by-step instructions! Love your work!

  • @devaraj1102
    @devaraj1102 4 ปีที่แล้ว +9

    We need more Toturial like this. Thank you.

  • @rollbot
    @rollbot ปีที่แล้ว

    struggling a few of these topics. thank you so much for the effort to put this together and share the knowledge! appreciated!

  • @Lets_get_wealthy
    @Lets_get_wealthy 3 ปีที่แล้ว +3

    Wow, how could I never hear about this channel before?
    Amazing content, you got another subscriber.

  • @PiyushAgarwal11
    @PiyushAgarwal11 3 ปีที่แล้ว +3

    Thanks a lot for this amazing course. Very effective and helpful to quickly get up to speed on openCV.

  • @kuro2ck
    @kuro2ck 3 ปีที่แล้ว +16

    This is excellent, you have a new sub. looking forward to going through the rest of your channel!

  • @mosha4726
    @mosha4726 2 ปีที่แล้ว

    This level of articulation is a testament to your deep understanding of the subject. One of the best.

  • @shallow_choices1887
    @shallow_choices1887 2 ปีที่แล้ว +2

    I have become a fan ! Definitely recommend to anyone who just came to the course.
    Just finished chapter 7 , which was great. Chapter 5 blew my mind , it was very interesting!
    I can't wait to start working on the projects !!

    • @naraniyamini7765
      @naraniyamini7765 2 ปีที่แล้ว

      How to create resource folder? Can you help me

  • @dominikagrajewska7791
    @dominikagrajewska7791 3 ปีที่แล้ว +3

    your room is beautiful. especially decorated ceiling!

  • @manjeeeeet
    @manjeeeeet 4 ปีที่แล้ว +100

    15:00 import video
    26:00 Eroded and dialation of image
    30:30 resizing the image
    37:30 Create colored boxes n lines
    41:00 rectangle
    48:00 perspective
    56:00 color detection

  • @seanmenzies1986
    @seanmenzies1986 3 ปีที่แล้ว +1

    TH-cam tutorial par excellence. Great explanations, perfect pacing and very professional presentation. I would subscribe 10 times if I could.

  • @nrdesign1991
    @nrdesign1991 3 ปีที่แล้ว +18

    This is perfect as an entry to opencv, after already having learned how the math and filters themselves work. This makes everything incredibly easy.

    • @murtazasworkshop
      @murtazasworkshop  3 ปีที่แล้ว

      I am Glad you found it useful.

    • @baturalpkaplan5516
      @baturalpkaplan5516 2 ปีที่แล้ว

      i have got ''import "cv2" could not be resolved Pylance(reportmissingImports) [1,8] issue. can someone pls help me?

  • @DEXUS1990
    @DEXUS1990 4 ปีที่แล้ว +4

    OMG, i was looking for good source of info about OpenCV + Python for 3 day at different languages. I just started, but thank you in advance. You are awesome.

  • @gayathrigirishnair7405
    @gayathrigirishnair7405 2 ปีที่แล้ว +6

    Thank You for this great video. How you've designed the projects to go over all the chapter material is very thoughtful. The projects really helped solidify things covered by the chapters.

  • @pkron96
    @pkron96 3 ปีที่แล้ว +2

    Done all in 1 day, but that was hard :) also figured how to do face detection using webcam, just by using your tutorial. Great work ! thanks a lot

  • @Sunny-qe5el
    @Sunny-qe5el 2 ปีที่แล้ว +3

    Wow!
    This tutorial is so easy to understand and practice along the way.
    It really helped me to grasp the fundamentals of OpenCV.
    Thanks a ton Murtaza for such a great video and keep up the great work.

  • @poseidonbrozeus5888
    @poseidonbrozeus5888 3 ปีที่แล้ว +28

    Omg man I was so fucking sad when I finished and it just ended! I always love it when the teacher gives a little goodbye for sticking with them for 3 hours, I wanted to see you :(

  • @JayantAroraballer
    @JayantAroraballer 2 ปีที่แล้ว

    Just went through it, great tutorial! Very well explained!

  • @gaurikuwalekar1517
    @gaurikuwalekar1517 3 ปีที่แล้ว

    So finally i am almost done with my final year project.
    It helped a lot !
    Thanx for a detailed explanation for free !

  • @serdaraytemiz9978
    @serdaraytemiz9978 3 ปีที่แล้ว +4

    Awesome video. I do have 2 projects that required computer vision and being a Mechanical engineer and phyton illiterate did not help the project. This really opened up a massive door that was blocking my way. The words to express my gratitude and thanks are not invented, yet.
    I have a question on line detection. I noticed you always use GaussianBlur before using Canny and push the Blur image to the Canny Function. Is there a certain reason why you use Blurred image instead of the standard gray scale. The gray scale produces a sharper image which will result in sharper edges, Right??

  • @cesarborgen3188
    @cesarborgen3188 2 ปีที่แล้ว +10

    Chapter 6; the function he adds is:
    def stackImages(scale,imgArray):
    rows = len(imgArray)
    cols = len(imgArray[0])
    rowsAvailable = isinstance(imgArray[0], list)
    width = imgArray[0][0].shape[1]
    height = imgArray[0][0].shape[0]
    if rowsAvailable:
    for x in range ( 0, rows):
    for y in range(0, cols):
    if imgArray[x][y].shape[:2] == imgArray[0][0].shape [:2]:
    imgArray[x][y] = cv2.resize(imgArray[x][y], (0, 0), None, scale, scale)
    else:
    imgArray[x][y] = cv2.resize(imgArray[x][y], (imgArray[0][0].shape[1], imgArray[0][0].shape[0]), None, scale, scale)
    if len(imgArray[x][y].shape) == 2: imgArray[x][y]= cv2.cvtColor( imgArray[x][y], cv2.COLOR_GRAY2BGR)
    imageBlank = np.zeros((height, width, 3), np.uint8)
    hor = [imageBlank]*rows
    hor_con = [imageBlank]*rows
    for x in range(0, rows):
    hor[x] = np.hstack(imgArray[x])
    ver = np.vstack(hor)
    else:
    for x in range(0, rows):
    if imgArray[x].shape[:2] == imgArray[0].shape[:2]:
    imgArray[x] = cv2.resize(imgArray[x], (0, 0), None, scale, scale)
    else:
    imgArray[x] = cv2.resize(imgArray[x], (imgArray[0].shape[1], imgArray[0].shape[0]), None,scale, scale)
    if len(imgArray[x].shape) == 2: imgArray[x] = cv2.cvtColor(imgArray[x], cv2.COLOR_GRAY2BGR)
    hor= np.hstack(imgArray)
    ver = hor
    return ver

    • @lechihieu2606
      @lechihieu2606 2 ปีที่แล้ว

      Thank you so so much! I have been looking every where to download it

    • @yusrashaikh252
      @yusrashaikh252 ปีที่แล้ว

      from where we can get default xml files? any idea

    • @danielcat5831
      @danielcat5831 ปีที่แล้ว

      I can't copy on phone so leaving this comment to find it when I get home.

    • @murtazasworkshop
      @murtazasworkshop  ปีที่แล้ว

      Good luck

  • @AlexKite68
    @AlexKite68 2 ปีที่แล้ว

    Thank you!
    You are real guru.
    The way you're explaining all the things is very good.
    Thumbs up!

  • @alana.4629
    @alana.4629 2 ปีที่แล้ว +1

    Thank you a lot ! I was looking for a good tutorial for OpenCV and i'm glad that i found you :D keep going !

  • @bouhannacheabdallah
    @bouhannacheabdallah 4 ปีที่แล้ว +14

    If i had this when i was in school it would made my graduation easier much easier

  • @prakashupadhyay9824
    @prakashupadhyay9824 4 ปีที่แล้ว +10

    literally this was a great tutorial one of the best thanks

  • @konstantinpetrishev8568
    @konstantinpetrishev8568 3 ปีที่แล้ว

    Thank you so much for course- very easy and enough comprehansive
    I jyst use java for my project, but used your course like a start point!

  • @et0x
    @et0x 2 ปีที่แล้ว

    I have taken multiple courses related to opencv and no other course gave me this much clarity information.
    Thank you

  • @DataversePH
    @DataversePH 3 ปีที่แล้ว +98

    2:00:10 "So none of them are working, great!" i laughed hard at this hahahah

  • @skynet1511
    @skynet1511 4 ปีที่แล้ว +23

    I really appreciate the time and energy you had to put into all this work to be a success, Thank You for every sec.

    • @murtazasworkshop
      @murtazasworkshop  4 ปีที่แล้ว +3

      Thank you for your kind words

    • @baturalpkaplan5516
      @baturalpkaplan5516 2 ปีที่แล้ว

      i have got ''import "cv2" could not be resolved Pylance(reportmissingImports) [1,8] issue. can someone pls help me?

    • @williamcabisca5058
      @williamcabisca5058 2 ปีที่แล้ว

      using skypacket in my area was hughs net does this make difference? Are there latencies with real time data retrieval?

  • @nodistinguish5924
    @nodistinguish5924 2 ปีที่แล้ว

    You are the best teacher I've ever watched
    Your voice is so relaxing and not boring and the way you explain is totally and literally satisfying
    I love coding knowing that I'm just beginner
    U made me love coding even more
    I love you dude keep on

  • @shakmakbu
    @shakmakbu 3 ปีที่แล้ว

    What a great tutorial. The best I have ever seen. You are great. Thank you so much. Keep it on.

  • @lambda9331
    @lambda9331 3 ปีที่แล้ว +7

    You deserve a standing ovation thk's

  • @mythical21
    @mythical21 ปีที่แล้ว +11

    This video really helped me understand the basics before jumping straight into action! As a twelve year old, I was very confused with all other tutorials, but this one really set me forward. Thank you!

    • @kjhi89568
      @kjhi89568 ปีที่แล้ว +4

      me too i am only 5 year old , but can understand this video

    • @OtherMike5000
      @OtherMike5000 ปีที่แล้ว +5

      @@kjhi89568 Me too. I am only 7 months old but I can understand this video.

    • @alasdead8245
      @alasdead8245 ปีที่แล้ว +5

      @@OtherMike5000 Me too. I am a fetus and this was very helpful

    • @matchpredictionwithacid9419
      @matchpredictionwithacid9419 11 หลายเดือนก่อน +2

      me too , my mom is not yet married , but i can understand this video

  • @suryadarshan2381
    @suryadarshan2381 5 หลายเดือนก่อน

    Bro, i should just let you know... You are amazing! Fantastic teacher you are bruv! Hope you grow, you truly deserve it...

  • @lex-un-der
    @lex-un-der 2 ปีที่แล้ว

    That is amazing, thank yu so much for such a full video tutorial. With the help of your videos I have started to learn python, opencv and so on))

  • @ribbonblew
    @ribbonblew 3 ปีที่แล้ว +3

    very simple and fantastic video. I just watched few minutes and got involved with learning effectively. There are times where there is no neccesary to explain things out of box. But this guy had done it, explained it very well and by observing the animation in the video he had put, he had simply taken a lot of time and energy to make the viewers understand. I am subscribing his channel right away !!

    • @murtazasworkshop
      @murtazasworkshop  3 ปีที่แล้ว

      Glad you enjoyed it!

    • @baturalpkaplan5516
      @baturalpkaplan5516 2 ปีที่แล้ว

      i have got ''import "cv2" could not be resolved Pylance(reportmissingImports) [1,8] issue. can someone pls help me?

  • @bigboi7140
    @bigboi7140 3 ปีที่แล้ว +7

    omg i spent so long on my own trying to import cv2 it never worked u just made it a piece of cake I hope you live a long and happy life lol it had taken me hours and u helped me do it in seconds

    • @murtazasworkshop
      @murtazasworkshop  3 ปีที่แล้ว +2

      thank you for your kind words

    • @bigboi7140
      @bigboi7140 3 ปีที่แล้ว +2

      @@murtazasworkshop And you also actually reply and read your comments on your videos I am subscribing lol

  • @banffspring72
    @banffspring72 ปีที่แล้ว

    Thank you for your tutorial on OpenCV with python. I am usually working in C# VS and I would LOVE to have a tutorial in real time quad (four independent ROI's) for SFR (Spatial Frequency Response). This can be used for an EVK / Dev-Kit image sensor with lens looking at a slanted edge target (B/W) on optical axis. Essentially, it is recognizing the slanted edge gradients and since this is slanted, it reduces pixel (imager side) noise due to the diagonal cross section of how the ROI's read the edges. Mind you that each ROI will have real time MTF readings on all four sides. so 16 total MTF values which can be updated ~ 1.5 seconds. This is well know in online GUI apps and I do not want to utilize their approach. So Something fresh from you would be outstanding to say the least. This should be less in complexity compared to facial recognition but I thought I ask you please.

  • @tech-letters
    @tech-letters 3 ปีที่แล้ว +2

    Simply amazing. Thanks for your hard work putting all this together! I know how hard it is to put 30 minutes videoes together.... great job!!!

    • @murtazasworkshop
      @murtazasworkshop  3 ปีที่แล้ว

      Glad you enjoy it!

    • @baturalpkaplan5516
      @baturalpkaplan5516 2 ปีที่แล้ว

      i have got ''import "cv2" could not be resolved Pylance(reportmissingImports) [1,8] issue. can someone pls help me?

  • @meusoft
    @meusoft 4 ปีที่แล้ว +9

    Thank you so much, I'm waiting for new projects in Python, OpenCv

  • @ESkillify
    @ESkillify 4 ปีที่แล้ว +223

    i have completed for this point 1:12:30
    that's enough for today
    thank you for the adequate explanation

    • @murtazasworkshop
      @murtazasworkshop  4 ปีที่แล้ว +18

      You're Welcome. good luck with the rest

    • @user-tn5wx9dt3r
      @user-tn5wx9dt3r 3 ปีที่แล้ว +6

      me too

    • @jaytravis2487
      @jaytravis2487 3 ปีที่แล้ว

      You should blog your progress here. I too am working with this video.

    • @SACKO0731
      @SACKO0731 3 ปีที่แล้ว

      Murtaza's Workshop-Robotics an AI
      CAN SHOW US AT LIST HOW DID YOU GET THE FOLDER IN WHICH THERE'S THE IMAGE AND VIDEO FROM, I SAW IT THEN IT JUST DISAPPEAR OUT OF NOWHERE, I BELIEVE THIS IS THE REASON I'M GETTING THIS ERROR. MUCH APPRECIATED BY THE WAY

    • @goose_clues
      @goose_clues 3 ปีที่แล้ว +16

      @@SACKO0731 maybe capslock is the reason

  • @mugheerasaleem6391
    @mugheerasaleem6391 2 ปีที่แล้ว

    Just superb brother. Keep up the good work. Absolutely loved it.

  • @richardgordon7123
    @richardgordon7123 2 ปีที่แล้ว

    Excellent tutorial. Thank you. Direct and to the point. Super presenter.

  • @rajasekars9991
    @rajasekars9991 3 ปีที่แล้ว +6

    Great Tutorial, im looking forward to learn ESP32. it will be very helpful if you could do a series of lessons on esp32, and how to program using Arduino.

  • @lunegreiros
    @lunegreiros 3 ปีที่แล้ว +5

    Perfect. i love this section of 3 hours. my suggestion is make a application that's use a webcam, recognize letters and search words in diagram like (Word Search Scrabble Puzzle games)

    • @devenderkumar-pr6ig
      @devenderkumar-pr6ig 2 ปีที่แล้ว

      how i can adjust my web cam to number plate for last project

  • @Hasan...
    @Hasan... 3 ปีที่แล้ว +2

    Ok this really is the Best one among 100s of OpenCV tutorials on TH-cam!

  • @TriNguyen-xi8ji
    @TriNguyen-xi8ji 3 ปีที่แล้ว

    Thank you a lot. Your video is concise but informative. I actually enjoy your teaching style than most lecturers on Udemy about machine learning.

  • @piyushkhanna5159
    @piyushkhanna5159 2 ปีที่แล้ว +27

    41:29, There's a shortcut to put cv2.FILLED. Just put '-1' as thickness and it will get filled. Works with all geometric shapes- rect, circle etc

    • @PerfectHilton
      @PerfectHilton ปีที่แล้ว +4

      The benefit of cv2.FILLED instead of -1 is that it's more readable and the programmer who will read your code in the future will not have to go check the documentation on what -1 means. It's always a best practice to use human understandable words instead of numbers. The very reason Enums exist.

    • @piyushkhanna5159
      @piyushkhanna5159 ปีที่แล้ว +2

      @@PerfectHilton Although my advice was for solo-programmers, I appreciate your comment Hilton. Thanks 😄

    • @PerfectHilton
      @PerfectHilton ปีที่แล้ว +2

      @@piyushkhanna5159 just a habit of giving code reviews at work! Merry Christmas, happy holidays.

  • @noorhassouneh2357
    @noorhassouneh2357 4 ปีที่แล้ว +13

    Thanks for this great source!
    I'm using the latest version of python, would it cause any problem before I start?

    • @murtazasworkshop
      @murtazasworkshop  4 ปีที่แล้ว +10

      For this tutorial it will not . but if you end up trying AI frameworks such as tensorflow it might give you some trouble.

  • @tuliohenrique6146
    @tuliohenrique6146 2 ปีที่แล้ว +1

    Thank you for the tutorial, helped me a lot with my school project

  • @trdngy8230
    @trdngy8230 3 ปีที่แล้ว +31

    00:00 Intro
    2:17 Introduction to Images
    4:37 Installations
    9:09 Chapter 1- Read Images Video Webcam
    17:01 Chapter 2 - Basic Functions
    27:31 Chapter 3 - Crop and Resize
    34:12 Chapter 4 - Shapes and Text
    44:59 Chapter 5 - Warp Perspective
    50:04 Chapter 6 - Joining Images
    56:14 Chapter 7 - Color Detection
    1:15:37 Chapter 8 - Contour/Shape Detection
    1:40:31 Chapter 9 - Face Detection
    1:46:03 Project 1
    2:15:45 Project 2
    2:56:34 Project 3

  • @WederGonzalez
    @WederGonzalez 3 ปีที่แล้ว +47

    2:17 Introduction to Images
    4:37 Installations
    9:09 Chapter 1
    - Read Images, Videos, Webcam
    17:01 Chapter 2
    - Basic Functions
    27:31 Chapter 3
    - Resizing and cropping
    34:12 Chapter 4
    - Drawing Shapes and texts
    44:59 Chapter 5
    - Warp perspective
    50:04 Chapter 6
    - Joning Images
    56:14 Chapter 7
    - Color Detection
    1:15:37 Chapter 8
    - Contours / Shape detection
    1:40:31 Chapter 9
    - Face Detection
    1:46:03 - Project 1
    2:15:45 - Project 2
    2:56:34 - Project 3

  • @avanthawije
    @avanthawije 2 ปีที่แล้ว

    Thank you so much for the Tutorial. I learned So many things about image processing.

  • @emilygilbert7684
    @emilygilbert7684 3 ปีที่แล้ว

    Amazing course, thank you for your time!

  • @davideastwood5668
    @davideastwood5668 3 ปีที่แล้ว +5

    I wish i would of found this channel sooner into the covid season lol

  • @omersohail95
    @omersohail95 3 ปีที่แล้ว +9

    Chapter 9(Face Detection):
    If anybody's encountering an error like this: (-215) !empty() in function detectMultiScale
    Try calling the xml file this way:
    faceCascade= cv2.CascadeClassifier(cv2.data.haarcascades + 'haarcascade_frontalface_default.xml')
    and then:
    faces= faces.detectMultiScale(imgGray, 1.3, 5)

    • @bryankee1368
      @bryankee1368 3 ปีที่แล้ว

      Thanks man! It works!

    • @lincolnwallace17
      @lincolnwallace17 3 ปีที่แล้ว

      Thank you so much man! Amazing!!!

    • @CodeOmega_
      @CodeOmega_ 3 ปีที่แล้ว

      Bro... Thank you soo soo muchhhh
      i was finding out the error the last 25 mins

  • @elemento8763
    @elemento8763 3 ปีที่แล้ว

    Amazing Tutorial Sir learned a lot indeed. Thanks a lot for this, will come back soon, hungry for more :)

  • @pwnd6839
    @pwnd6839 3 ปีที่แล้ว

    Very useful! We need more content like this, thankyou mann! 👍🏻

  • @Skpexable
    @Skpexable 3 ปีที่แล้ว +3

    I havent watched the video yet and I already liked it by reading the comments :D

  • @bigboi7140
    @bigboi7140 3 ปีที่แล้ว +8

    face reveal pls lol i am about to finish this course and i have learned so much!

  • @TXfoxie
    @TXfoxie 3 ปีที่แล้ว

    The best OpenCV tutorial so far.

  • @kenneth6965
    @kenneth6965 2 ปีที่แล้ว

    Thank you so much for this video. It helped me so much and is absolutely worth it to watch.

  • @changedmyways7100
    @changedmyways7100 3 ปีที่แล้ว +4

    Don't even know what this is about but I've been watching for the last 39 minutes

  • @terranovatech8672
    @terranovatech8672 3 ปีที่แล้ว +6

    If you are getting an error at 2:34:45 Make sure your webcam is pointing at the image, mine was on the table and would immediately error out. As soon as I adjusted the page to be in sight, It warped. :)

    • @Bell0
      @Bell0 3 ปีที่แล้ว

      tried this didnt change anything can you help me out?

    • @terranovatech8672
      @terranovatech8672 3 ปีที่แล้ว

      @@Bell0 So long as you followed everything up until this point, All I can say is I had to keep trying to run the program and moving my webcam to different positions, the program needs to see and image to warp, if it doesn't, it will crash or not run and throw an error. I used IVCam and my phone as the webcam, you could try that!

  • @chipko
    @chipko 2 ปีที่แล้ว +2

    I'm only one third of the way through this but I must say - THIS IS AMAZING! I am learning so much (complete beginner with OpenCV)

    • @tomiinai
      @tomiinai 2 ปีที่แล้ว +1

      Same here. Keep going yeah.

  • @fatimasouleymanova736
    @fatimasouleymanova736 2 ปีที่แล้ว +1

    This course helped me a lot on my project, a special thank you!

    • @baturalpkaplan5516
      @baturalpkaplan5516 2 ปีที่แล้ว

      i have got ''import "cv2" could not be resolved Pylance(reportmissingImports) [1,8] issue. can someone pls help me?

  • @MajidAli-wx3px
    @MajidAli-wx3px 3 ปีที่แล้ว +3

    Thank you so much sir❤
    Today I completed the video 1:15:30 chapter 7
    Sir I need the stack function code whose are used in chapter 6 and 7 for stacking images

    • @user-lu9ed6kn1k
      @user-lu9ed6kn1k ปีที่แล้ว

      def stackImages(scale,imgArray):
      rows = len(imgArray)
      cols = len(imgArray[0])
      rowsAvailable = isinstance(imgArray[0], list)
      width = imgArray[0][0].shape[1]
      height = imgArray[0][0].shape[0]
      if rowsAvailable:
      for x in range ( 0, rows):
      for y in range(0, cols):
      if imgArray[x][y].shape[:2] == imgArray[0][0].shape [:2]:
      imgArray[x][y] = cv2.resize(imgArray[x][y], (0, 0), None, scale, scale)
      else:
      imgArray[x][y] = cv2.resize(imgArray[x][y], (imgArray[0][0].shape[1], imgArray[0][0].shape[0]), None, scale, scale)
      if len(imgArray[x][y].shape) == 2: imgArray[x][y]= cv2.cvtColor( imgArray[x][y], cv2.COLOR_GRAY2BGR)
      imageBlank = np.zeros((height, width, 3), np.uint8)
      hor = [imageBlank]*rows
      hor_con = [imageBlank]*rows
      for x in range(0, rows):
      hor[x] = np.hstack(imgArray[x])
      ver = np.vstack(hor)
      else:
      for x in range(0, rows):
      if imgArray[x].shape[:2] == imgArray[0].shape[:2]:
      imgArray[x] = cv2.resize(imgArray[x], (0, 0), None, scale, scale)
      else:
      imgArray[x] = cv2.resize(imgArray[x], (imgArray[0].shape[1], imgArray[0].shape[0]), None,scale, scale)
      if len(imgArray[x].shape) == 2: imgArray[x] = cv2.cvtColor(imgArray[x], cv2.COLOR_GRAY2BGR)
      hor= np.hstack(imgArray)
      ver = hor
      return ver

  • @commitmaster4543
    @commitmaster4543 4 ปีที่แล้ว +29

    The instructions were unclear, ended up creating a terminator. Now it looks for Murtaza Conor 👀

  • @tugbaozkan207
    @tugbaozkan207 3 ปีที่แล้ว

    thank you so much sir , i could understand very well the structure of opencv . It is very useful video and tutorial ,god bless your labor

  • @gabriel_felippe
    @gabriel_felippe 2 ปีที่แล้ว

    Great course, thank you! excellent and fun!

  • @TheAuraa
    @TheAuraa 3 ปีที่แล้ว +9

    if anyone have latest version of numpy and getting the error ImportError: numpy.core.multiarray failed to import
    open terminal and use
    "pip install numpy==1.14.5"
    this will solve it :)

    • @MrBlurie23
      @MrBlurie23 3 ปีที่แล้ว

      thank you!!!!

    • @danieltorres9954
      @danieltorres9954 3 ปีที่แล้ว +1

      thank you so much. I spend many days this wee trying solving this failure

    • @TheAuraa
      @TheAuraa 3 ปีที่แล้ว

      @@danieltorres9954 no worries, happy coding man

    • @devenderkumar-pr6ig
      @devenderkumar-pr6ig 2 ปีที่แล้ว

      how i can adjust my web cam to number plate for last project

  • @rogerhernandez3106
    @rogerhernandez3106 3 ปีที่แล้ว +3

    Hi, where can i get the resorces (images) that he uses for the tutorial? thanks

    • @murtazasworkshop
      @murtazasworkshop  3 ปีที่แล้ว +2

      Let me see if i can find them, ill put it on the course page on the website.

    • @rogerhernandez3106
      @rogerhernandez3106 3 ปีที่แล้ว

      @@murtazasworkshop oh, that's would be amazing.

    • @moviesadda2595
      @moviesadda2595 3 ปีที่แล้ว

      You can find them in sample folder from opencv repository on git

    • @kjayaram8157
      @kjayaram8157 3 ปีที่แล้ว

      Did you find it?

    • @rogerhernandez3106
      @rogerhernandez3106 3 ปีที่แล้ว

      I found it on opencv repository

  • @Cadmium77
    @Cadmium77 3 ปีที่แล้ว

    Now this is a superb tutorial. Thanks for sharing this with us.

  • @zhany0u
    @zhany0u 2 หลายเดือนก่อน +1

    hi pal, these tutorial videos are very useful for self-spaced learner, they are compact, inclusive with open cv basics. Thx

  • @manavt2000
    @manavt2000 2 ปีที่แล้ว +2

    1:15:42 Done for the day... This is my bookmark... Thanks for such amazing tutorials man!

  • @huntersama4099
    @huntersama4099 3 ปีที่แล้ว +5

    i have a problem when i try to import the image it says attributeerror: 'str' object has no attribute 'img'

    • @jacques8024
      @jacques8024 3 ปีที่แล้ว

      same

    • @EricZhu
      @EricZhu 3 ปีที่แล้ว

      @@jacques8024 same

  • @WheatleyOS
    @WheatleyOS 3 ปีที่แล้ว +3

    Sidenote: For Chapter 7 and Project 1, ditch conversion to HSV. It's buggy and completely unnecessary. Just do BGR and everything will be much more intuitive. Obviously, for Hue (now Blue), replace min/max from 0/179 to 0/255. Works perfectly.

  • @MrRe-sj2iv
    @MrRe-sj2iv ปีที่แล้ว

    I'm newbie, just found this very helpful video.
    Thank you so much!!!

  • @donggeon-kim
    @donggeon-kim 2 ปีที่แล้ว

    Thank you so much for this helpful video! I have one question: is there a particular reason that we use gray image when detecting the shape or face?

  • @gamersshrine9216
    @gamersshrine9216 4 ปีที่แล้ว +10

    I am interested to build a face recognition device for home security with opencv

  • @notchad2743
    @notchad2743 3 ปีที่แล้ว +8

    It's Christmas but I am watching this because I'm an alone loser. Anyway, Merry Christmas.

  • @NubianQueenVibe
    @NubianQueenVibe 2 ปีที่แล้ว

    Thankh you for this Murtaza
    Im determined. Gonna get me a tutor and finish this course!

  • @rohitarya4414
    @rohitarya4414 2 ปีที่แล้ว

    Can't believe this was free.Thanks Murtaza for sharing your knowledge with the world

  • @user-qi7ue1iw6u
    @user-qi7ue1iw6u 4 ปีที่แล้ว +3

    Sir, can I use the material in your vedeo in spyder rather than Pycharm?

    • @murtazasworkshop
      @murtazasworkshop  4 ปีที่แล้ว +1

      you can use pretty much any editor as long as python and opencv are properly installed.