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

Поділитися
Вставка
  • Опубліковано 8 тра 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 UA-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-...
    👉 UA-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,2 тис.

  • @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.

  • @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.

  • @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

  • @hoangkaka9972
    @hoangkaka9972 2 роки тому

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

  • @ethanspitips5903
    @ethanspitips5903 3 роки тому

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

  • @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!!!!!!!!!!!

  • @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.............

  • @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!

  • @mosha4726
    @mosha4726 2 роки тому

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

  • @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?

  • @devaraj1102
    @devaraj1102 4 роки тому +9

    We need more Toturial like this. Thank you.

  • @brainfreeze77
    @brainfreeze77 3 роки тому +10

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

  • @rollbot
    @rollbot Рік тому

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

  • @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

  • @PiyushAgarwal11
    @PiyushAgarwal11 3 роки тому +3

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

  • @zanivanusa7855
    @zanivanusa7855 3 роки тому +8

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

  • @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

  • @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

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

  • @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

  • @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.

  • @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.

  • @Lets_get_wealthy
    @Lets_get_wealthy 3 роки тому +3

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

  • @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

  • @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?

  • @kuro2ck
    @kuro2ck 3 роки тому +16

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

  • @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 !

  • @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.

  • @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?

  • @et0x
    @et0x 2 роки тому

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

  • @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

  • @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?

  • @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??

  • @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.

  • @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!

  • @bouhannacheabdallah
    @bouhannacheabdallah 4 роки тому +14

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

  • @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

  • @AlexKite68
    @AlexKite68 2 роки тому

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

  • @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?

  • @prakashupadhyay9824
    @prakashupadhyay9824 4 роки тому +10

    literally this was a great tutorial one of the best thanks

  • @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.

  • @DataversePH
    @DataversePH 3 роки тому +98

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

  • @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

  • @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 !

  • @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...

  • @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

  • @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

  • @richardgordon7123
    @richardgordon7123 2 роки тому

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

  • @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))

  • @lambda9331
    @lambda9331 3 роки тому +7

    You deserve a standing ovation thk's

  • @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.

  • @shakmakbu
    @shakmakbu 3 роки тому

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

  • @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.

  • @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

  • @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

  • @mugheerasaleem6391
    @mugheerasaleem6391 2 роки тому

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

  • @tuliohenrique6146
    @tuliohenrique6146 2 роки тому +1

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

  • @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.

  • @Hasan...
    @Hasan... 3 роки тому +2

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

  • @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

  • @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 :(

  • @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.

  • @yogeshbhargava8580
    @yogeshbhargava8580 Місяць тому +1

    Hi,
    This is indeed a good and informative video. In this video you showed that we can do reading of video from webcam... As I am also working on object tracking using webcam, I dont know how to extract the tracked coordinates (X,Y) of the object in .CSV or Excel sheet.
    If you can make a video for many of us who are new to openCV and got struck on this point... it will be a great help.
    Thanks

  • @emilygilbert7684
    @emilygilbert7684 3 роки тому

    Amazing course, thank you for your time!

  • @meusoft
    @meusoft 4 роки тому +9

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

  • @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

  • @avanthawije
    @avanthawije 2 роки тому

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

  • @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?

  • @davideastwood5668
    @davideastwood5668 3 роки тому +5

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

  • @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!

  • @elemento8763
    @elemento8763 3 роки тому

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

  • @manavt2000
    @manavt2000 2 роки тому +2

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

  • @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!

  • @pwnd6839
    @pwnd6839 3 роки тому

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

  • @TXfoxie
    @TXfoxie 3 роки тому

    The best OpenCV tutorial so far.

  • @changedmyways7100
    @changedmyways7100 3 роки тому +4

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

  • @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

  • @Siddharth-rs1ge
    @Siddharth-rs1ge 3 роки тому

    Thank you soo much. Professional programmers like you seriously providing good knowledge with example and not just talking like some ppl do. 1st yr student like me really can learn and implement alot.

  • @Cadmium77
    @Cadmium77 3 роки тому

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

  • @commitmaster4543
    @commitmaster4543 4 роки тому +29

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

  • @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.

  • @vinaychitturi5183
    @vinaychitturi5183 2 роки тому

    Done with Full Course. Now, Open CV is not a alien to me. Thanks Sir.

  • @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

  • @MrRe-sj2iv
    @MrRe-sj2iv Рік тому

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

  • @gabriel_felippe
    @gabriel_felippe 2 роки тому

    Great course, thank you! excellent and fun!

  • @huntersama4099
    @huntersama4099 3 роки тому +5

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

  • @gamersshrine9216
    @gamersshrine9216 4 роки тому +10

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

  • @kenneth6965
    @kenneth6965 2 роки тому

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

  • @rohitarya4414
    @rohitarya4414 2 роки тому

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

  • @notchad2743
    @notchad2743 3 роки тому +8

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

  • @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.