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.
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
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
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
@@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()
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.
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
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!
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...
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 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.
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.
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
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
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!!!!!!!!!!!
This is just STUPID. Spent hours and hours on coursera trying to learn opencv. Ended up giving up on it because some links in the course weren't working, they were bouncing around back and forth through different tools, like pytorch just popped out of nowhere. Went showering youtube to see what I could find and I found this gem 💎. I swear I learned more in 30 minutes than I have in 8 hours on coursera. Take this as a complement please.
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
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
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 !!
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.
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.
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
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)
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.
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!
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 :(
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.
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.
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)
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.
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??
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 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!
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.
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
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.
projct 1: facemask detection, project 2: social distance monitoring, project 3: intruder detection system, if you can make these project than that would be very help full, by the way YOU ARE A GREAT TEACHER !! JUST AMAZING KEEP IT UP SIR.
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 :)
TIP Sir : If you pressed the scroll button on mouse and start selecting.. you can select vertically a specific range. And thank you so much for this effort you have put for us. this was so helpful. Im daily learning these by part
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
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.
THANKS for making these excellent courses for us. At 14:34 it would be nicer to have this kind of code: #v is the object of VideoCapture while True: isData, img = v.read() if isData: cv2.imshow("Video",img) if cv2.waitKey(20) & 0xFF==ord('q'): cv2.destroyAllWindows() break else: cv2.destroyAllWindows() break and in the webcam, adding v.release() at the end of while loop
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.
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
goood video and jobs ;)
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
Satellite image segmentation
I want to know who is that girl in video thumnail.
I'm OpenCV expert. I recommend this video perfectly as expert's view.
Thank you
Are you really watched all video?
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
Микола Васькевич английский выучи и потом пиши
@@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()
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
god bless you
Here's an angel
hi, can i ask after this video how should one rate themselves in opencv from (0-10) 10 as in expert?
Why???
Got some pennies ???
@@narendrakumarjha734 what?
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.
Glad it was helpful! and thank you for your kind words
same lol and so meny of the other videos dident work lol
Where are the function he refers?
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
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!
Thank you so much!
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...
just 1 video to clear all the confusion I had in years. you deserve more then 1 like.
thanks so much.
Thank you for your kind words. I am glad the video was of help.
@@murtazasworkshop
This needs to be on free code camp.
Make your channel more popular by slightly diversifying your content, and video lengths.
couldn't say better!!!!
Alexson Chu, you just articulated what I was feeling. My 1000 likes for the creator of this video!!! Awesome.............
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
I am not able to install the library (OpebCvPython),Could you help me please
ERROR: Command errored out with exit status 1:
@@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.
@@saahmad93 Also this is very buggy in other IDEs like VSCode so just use PyCharm
i was really looking for these...thanxxx :D :D
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.
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
Thank you so so much! I have been looking every where to download it
from where we can get default xml files? any idea
I can't copy on phone so leaving this comment to find it when I get home.
Good luck
Never expected such a organized educational video online for free. Thanks!
Glad it was helpful!
@@murtazasworkshop sir what are the prerequisites for this video
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
thank you
56:00 ke baad give up krdiya ?
Many thanks!
I think he should put this on the time stamp instead
Thank you very much! 😊
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!!!!!!!!!!!
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
He is best teacher of open cv in the world ❤❤
This is just STUPID. Spent hours and hours on coursera trying to learn opencv. Ended up giving up on it because some links in the course weren't working, they were bouncing around back and forth through different tools, like pytorch just popped out of nowhere. Went showering youtube to see what I could find and I found this gem 💎. I swear I learned more in 30 minutes than I have in 8 hours on coursera. Take this as a complement please.
i have completed for this point 1:12:30
that's enough for today
thank you for the adequate explanation
You're Welcome. good luck with the rest
me too
You should blog your progress here. I too am working with this video.
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
@@SACKO0731 maybe capslock is the reason
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
thank you for your kind words
@@murtazasworkshop And you also actually reply and read your comments on your videos I am subscribing lol
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 !!
How to create resource folder? Can you help me
Dude, your channel is like a hidden gem. Great stuff.
This is perfect as an entry to opencv, after already having learned how the math and filters themselves work. This makes everything incredibly easy.
I am Glad you found it useful.
i have got ''import "cv2" could not be resolved Pylance(reportmissingImports) [1,8] issue. can someone pls help me?
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
Mikephung
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
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.
@@PerfectHilton Although my advice was for solo-programmers, I appreciate your comment Hilton. Thanks 😄
@@piyushkhanna5159 just a habit of giving code reviews at work! Merry Christmas, happy holidays.
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.
Glad it helped! Good Luck
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
This level of articulation is a testament to your deep understanding of the subject. One of the best.
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)
Thanks man! It works!
Thank you so much man! Amazing!!!
Bro... Thank you soo soo muchhhh
i was finding out the error the last 25 mins
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.
I am working on something similar. Have you developed something like that?
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)
Same here. Keep going yeah.
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!
me too i am only 5 year old , but can understand this video
@@kjhi89568 Me too. I am only 7 months old but I can understand this video.
@@OtherMike5000 Me too. I am a fetus and this was very helpful
me too , my mom is not yet married , but i can understand this video
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 :(
Same 💝
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.
We need more Toturial like this. Thank you.
Ok this really is the Best one among 100s of OpenCV tutorials on UA-cam!
Thank you for your kind words.
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.
How to create resource folder.?
If i had this when i was in school it would made my graduation easier much easier
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)
how i can adjust my web cam to number plate for last project
your room is beautiful. especially decorated ceiling!
1:15:42 Done for the day... This is my bookmark... Thanks for such amazing tutorials man!
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.
How to create resource folder?
You deserve a standing ovation thk's
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??
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
Done with Full Course. Now, Open CV is not a alien to me. Thanks Sir.
I really appreciate the time and energy you had to put into all this work to be a success, Thank You for every sec.
Thank you for your kind words
i have got ''import "cv2" could not be resolved Pylance(reportmissingImports) [1,8] issue. can someone pls help me?
using skypacket in my area was hughs net does this make difference? Are there latencies with real time data retrieval?
thank you, the best tutorial i have ever watched!!!
Министр, вы настоящий мастер своего дела - благодаря вам я уже в плюсе!
I havent watched the video yet and I already liked it by reading the comments :D
very helpful!!save my due
A very wonderful video. Thank you.
I wish i would of found this channel sooner into the covid season lol
This is excellent, you have a new sub. looking forward to going through the rest of your channel!
Welcome aboard!
Don't even know what this is about but I've been watching for the last 39 minutes
I have taken multiple courses related to opencv and no other course gave me this much clarity information.
Thank you
Bro, i should just let you know... You are amazing! Fantastic teacher you are bruv! Hope you grow, you truly deserve it...
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. :)
tried this didnt change anything can you help me out?
@@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!
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.
literally this was a great tutorial one of the best thanks
Glad you liked it!
Chiến lược bạn chia sẻ rất dễ hiểu và phù hợp với người mới bắt đầu.
Thank you so much, I'm waiting for new projects in Python, OpenCv
You are welcome
2:00:10 "So none of them are working, great!" i laughed hard at this hahahah
Lol . True Story
face reveal pls lol i am about to finish this course and i have learned so much!
Can't believe this was free.Thanks Murtaza for sharing your knowledge with the world
So finally i am almost done with my final year project.
It helped a lot !
Thanx for a detailed explanation for free !
Thanks for this great source!
I'm using the latest version of python, would it cause any problem before I start?
For this tutorial it will not . but if you end up trying AI frameworks such as tensorflow it might give you some trouble.
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
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
The instructions were unclear, ended up creating a terminator. Now it looks for Murtaza Conor 👀
lol i better go in hiding then
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.
projct 1: facemask detection, project 2: social distance monitoring, project 3: intruder detection system, if you can make these project than that would be very help full, by the way YOU ARE A GREAT TEACHER !! JUST AMAZING KEEP IT UP SIR.
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 :)
thank you!!!!
thank you so much. I spend many days this wee trying solving this failure
@@danieltorres9954 no worries, happy coding man
how i can adjust my web cam to number plate for last project
I am interested to build a face recognition device for home security with opencv
Can we work both
i have a problem when i try to import the image it says attributeerror: 'str' object has no attribute 'img'
same
@@jacques8024 same
It's Christmas but I am watching this because I'm an alone loser. Anyway, Merry Christmas.
Merry Christmas, my Friend!
Mery Christmas my dude!
belated merrry christmas
Murtaza, realy realy realy thank you.
45 minutes in. Saving for later.
For those having issues with the autocomplete not working, use "from cv2 import cv2"
Great Explanation Man
Covered All the important topics
Thank you for the tutorial, helped me a lot with my school project
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!!!
Glad you enjoy it!
i have got ''import "cv2" could not be resolved Pylance(reportmissingImports) [1,8] issue. can someone pls help me?
The best opencv learning I've ever seen.
Your teaching skills are on a different level.
Jazaaka Allahu bi hayr my brother! Excelent guide.
Thank you a lot ! I was looking for a good tutorial for OpenCV and i'm glad that i found you :D keep going !
hi pal, these tutorial videos are very useful for self-spaced learner, they are compact, inclusive with open cv basics. Thx
You make opencv so easy to understand. You video is very easy to follow and understand. Thank you
UA-cam tutorial par excellence. Great explanations, perfect pacing and very professional presentation. I would subscribe 10 times if I could.
interessante video
Do you have the function: stackImages()?. You can pass me please
The best OpenCV tutorial so far.
TIP Sir : If you pressed the scroll button on mouse and start selecting.. you can select vertically a specific range. And thank you so much for this effort you have put for us. this was so helpful. Im daily learning these by part
Very clear explanations and careful step-by-step instructions! Love your work!
this is one of the best tutoriel on the net
Связка огонь, пока работает, пробуем 😮🎉
Thank you!
You are real guru.
The way you're explaining all the things is very good.
Thumbs up!
Alhamdulillah i find your channel. Good explanation. Keep the good work.
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
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.
Welcome. and good luck.
@@murtazasworkshop thanks. 👍😀
Great tutorial of cv! 10 thumbs up.
I know scripting, barely know python. This was an odyssey for me, was fun and worth trying this.
I'm newbie, just found this very helpful video.
Thank you so much!!!
Tip: at 1:12:54 one can still adjust the taskbar after the output, to get perfect coloured image.
THANKS for making these excellent courses for us.
At 14:34
it would be nicer to have this kind of code:
#v is the object of VideoCapture
while True:
isData, img = v.read()
if isData:
cv2.imshow("Video",img)
if cv2.waitKey(20) & 0xFF==ord('q'):
cv2.destroyAllWindows()
break
else:
cv2.destroyAllWindows()
break
and in the webcam, adding v.release() at the end of while loop
struggling a few of these topics. thank you so much for the effort to put this together and share the knowledge! appreciated!