Control webcam with servo motor and Raspberry pi - Opencv with Python tutorial
Vložit
- čas přidán 20. 08. 2024
- We will learn in this tutorial how to control the webcam using a servo motor and the raspberry pi.
Instructions and source code: pysource.com/2...
➤ Full Videocourses:
Object Detection: pysource.com/o...
➤ Follow me on:
Instagram: / pysource7
LinkedIn: / pysource
➤ For business inquiries:
pysource.com/c...
►► You can Build a Computer Vision software to DETECT and TRACK any Object.
→ 4-Step FREE Workshop pysource.com/blueprint-workshop-signup/
Do you do commissions? Im looking for someone to build a device like this, Based on Raspberry pie. ;. ?
wow that's fantastic and you made a free tutorial for it. thanks a lot :D
You are my hero for today. Thank you: i learned that much in all your videos
I did that two months ago
By face direction
Again with your help on dlib
Thank you
My project was a robot to detect and warn you about unknown people.
can you make a tutorial of face tracking.
@@Raju-we6ow face tracking is simple.... but when you will realize that "face" is "faces" and not only your "face"..... you will need face recognition and not only face detection...at this point probably you have just understand that increase difficult and pi haven't much power to real time face detection and recognition... and you may explode 😂😂😂
Thank you for sharing,your videos are really helping me working on my final year project.
Yeaaaaahhhh! Just awesome! It's work! One of the best tutorial for me. Thanks a lot!!! I subscribed to your CZcams channel!
You are the best for me. Thank you so much for your tutorials.
One dislike is from the red object.
15:46 When servo stuff starts (timestamp mostly for my own use :> )
Allah razı olsun muhterem
Thank you ❤
Great job, i watch your video regular, all are just awesome!!!!!!!
Man! how do you do this so easily! thumbs up!
You are a legend, great video.
Nice...soon you can put object tracking enable...and disable...and some joystick...and...wireless webcam control from other pc...
dude you are a legend
Thank you so much for the video
Perfect. Thanks for sharing.
Very nice ! thanks a lot
great video, thank you
you are great sir.
Amazing.....very unique and appears to wok better than pixycam. Can it be also connected to picam. Once again awesome work and great educative video.
Great! Well done
ModuleNotFoundError: No module named 'PCA9685' ?
excuse me sir, can i use to motor servo xyz to ??
Se puede hacer lo mismo con una ESP32 cam ? Y seguidor de rostro ??
23:40 모터, opencv 활용
25:59 화면 부드럽게
what rotating device are you using? Can you suggest any good rotating device I can buy that can be controlled by computer? Can that mg996r be using on macOS or pc?
Can you do the same thing but actually training the raspberry/Jetson on a specific ‘object’ class rather than the color?
Hi i am thinking about working on the same. Did you get any sources or materials to do it?
@@Lancasterlitchfield I found a way to do it following the Jetson Nano series in Paul McWhorters channel combined with Sistemas Inteligentes channel. Combined what I learned from both (and this one of course) - the latter is in Spanish though.
@@jrickyramos could you give me your mail id so that if i face any issues i might be able to contact you?
I am doing segmentation by RGB values of the object, and it is running good but the problem is the display shows the segmentation after 8 to 9 seconds when I put the object in front of the camera...I m using RPi 4 b model with 4 gb ram ..please help me to reduce the response time..I m using Logitech USB cam
Love the smile
how did you found your range of color ?
thank you, sir and I learned a lot from you.
but there is some error with my code. i try to write again with my own self with your code as a reference
but in ' _, contours, _ = cv2.findContours(color_mask, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE) '
I got an error, ValueError : not enough values to unpack (expected 3, got 2)
I hope you can help me. thank you
you should change it to : contours,hierachy=cv2.findContours(color_mask
,cv2.RETR_TREE,cv2.CHAIN_APPROX_SIMPLE)
maybe that can help your problem
you should use this contours, _ = cv2.findContours(frame, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE) '# if u dont need hierachy,
@@igrisknight941 thank
I want to increase fps. Its not usable at present.
Using raspi 3b
Est-ce possible de faire du traking mais avec n'importe quel objet ?
hy, this is motivating..i have a similar project but i want to track something different
How can I get the co-ordinates of the detected ball so as to follow it? Please help...
super nice bro
Im getting very low FPS probably (0.2)
Please suggest me something.
Using : pi3b and hpwebcam for face recognition
how to solve this ? name 'x_medium' is not defined
for cnt in contours:
(x, y, w, h) = cv2.boundingRect(cnt)
x_medium = int((x + x + w) / 2)
break
cv2.line(frame, (x_medium, 0), (x_medium, 480), (0, 255, 0), 2)
I am using the RPi.GPIO library. The problem is, that it's not able to update the angle on every frame, bcs you need to put a time.sleep(0.5) after you gave the servo the command to move to an specific angle. Otherwise it will just instantly jump to the next command and never really has time to move. Is there a different way to approach this, without using the PCA9685 library? Bcs I'm not possesing the extra board
You could integrate the python Multithreading option, so that one thread will activate the movement of the servo, while the second thread will keep track of the object at the same time.
@@pysource-com Thank you a lot for the quick answer! I'll give it a shot for sure
Nice video! Towards the end of the video you talk about a video course about building projects for a working environment (conveyor belt, etc... automation). Have you done them yet? I'm super interested?
Hi Rob, I'm working on it hopefully I'll be able to release it just after the summer. Keep folllowing the channel because I will give the announcement as soon as I have a date
Pysource cool thanks. I will stay tuned!
Good evening sir, i wanna ask you something about raspberry pi
I have a project like a color detection using hsv color space. But when i run the program in raspberry the camera like lagging not clearly and smooth for detection, how can i fix this problem sir. Thx
Hii can u help me I'm working on a project human following trolley by detecting the colour of shirt/tag of user...I'm not able to get the coordinats and to find the distance between the user n the trolley...
Hi, I have the adafruit library for the PCA9685, but when I run your code I get an error:
from PCA9685 import PCA9685
ModuleNotFoundError: No module named 'PCA9685'.
Do you have the library you used for this module? I don't understand why the Adafruit one is not working for me.
hello please i have a question concerning filters (gaussian, median, bilateral and averaging) associated with OpenCV. I have seen some tutorials using gaussian blur for object detection i would like to know why this particular filter is used for object detection, why is it the best and what are the features that differ from other 3 filters that i have mentioned.
How did you connect servo? Did you use gpio pins?
if we write videocapture(0) can the raspberry get the feed from the camera which is fitted to it?
Efficiënt programming is not his forte :)
Using sorted, with reverse is highly inefficient. Because you’ll iterate through the list twice.
So a simple one for loop and only keeping the biggest counter is faster.
Plus you don’t need to setup an iterator in a for loop and run it only on the first item - winning performance and reducing an instruction.
Doing the x_medium definition calculation and then performing the same calculation for the center is bad! Just assign the x_medium to the center.
It may seem nit picking but in applications where there’s a lot of processing, this sort of thing. You need to minimize overhead.
Python already is slow, you could knock this up in C++ and even then, you’d make it efficient.
Hi, is it possible to detect object by color same inside an ROI for tracking as well
You can ask yourself which PCA9685 library you get from
TRƯỜNG ĐÀO could you find that PCA9685 library ? If you found that library can you share with me please ?
Sir, Is it possible to move a robot useing object detection in open cv. Suppose if camera looks a BOOK, then my robot will move that direction.
cool !
Can we speed up the moment of ball so that camera moves faster???
how do I get the lower and higer values of a color?
Hi, anyone know how to divide the camera capture in order to detect based on frame segments on the camera capture. Meaning, if my width is 100, can I run the same program to detect in cements if 10 pixels for example from left to right
bonjour et un grand merci à vous, j’ai un rpi3 b+ et un Adafruit DC & Stepper Motor HAT pour Raspberry Pi - Mini Kit, je possède également des moteurs pas à pas nema 17, comment intégrer mon chapeau dans votre code, merci d’avance pour votre réponse que c’est, et bonne continuation.
could this be done using raspberry pi zero w?
Hey
I am getting this error
Please guide me through
select timeout
VIDIOC_DQBUF: Resource temporarily unavailable
Traceback (most recent call last):
File "opencv1.py", line 8, in
cv2.imshow('Frame',frame)
cv2.error: OpenCV(4.1.0) /home/x/opencv_all/opencv-4.1.0/modules/highgui/src/window.cpp:352: error: (-215:Assertion failed) size.width>0 && size.height>0 in function 'imshow'
Can we do this without a servo hat? i.e. can we do it using GPIO & PWM?
how to code
if i want to detect face instead of that red ball ..
please help me...
I declared a few lines of code pwm.setServo ... not received
How to export that pca9685.py mine is getting error message in the line "from ..... Import"
hello Pysource, can i request the libarary for PCA9685 in this video
Unfortunately I don't have the files of this project anymore.
Anyway you should use the library provided by your servo hat. I recommend to get the Adafruit servo hat and use their library.
how to install cv2 in raspberry?
plz guide me?
Is there a way to have so it's not just one color and can detect body's and faces? Great video!
of course yes
Can this project be used with yolov3?
Yes, using the DNN module by opencv you can import weights and cfg files of yolo v3, and also yolo v4 and then you can integrate it with the code I've written
Please can you give me the circuit program and the code when you use two servomotor sg90 with raspberry
genial
Hey my friend. Which camera do you use. I would like to buy the same. I'm doing a problem with opencv on raspberry but my camera is too slow
Logitech c922 pro
hello I'm alam from Indonesia, I'm very grateful to you because with this video I can get education, but may I ask for help so you make a video tutorial about detecting ripeness of tomatoes? thank you
what type of servo motor are you using ?
Hi, great work, do you think it is possible that proyect works in the same way with a simple 5MP cam for rpi? thanks in advantage
Idk if you're still on this or not, as it was a year ago, but I think the Motion package has some AI features. At least motion detecting capabilities. Not sure about facial recognition yet
Hello, do you know if it is possible to track Hornets in open-field ( OpenCV, RPi4, fixed HD camera, but laser moving) ? I'm not a developper and I desperate to do better than just detecting basic objects. Hornets are fast objects.
Hey, did you manage to come up with something for your project?
i want to program of cam pi
Its really great. Is this can applied to arduino?
czcams.com/video/29PKDYjxmL0/video.html try this
can you make a project to detect speed or velocity of an object?
This is difficult with a single camera, as you need to know the distance to the lens! Something close to the lens moves faster then something further away. If the camera is stationary and the objects are always at a similar distance then it’s easy. You measure the real life distance between two points in the frame and time how long it takes (how many frames) for the object to hit the first point and to hit the second point.
I’ve done this with a camera on my balcony that looks to the road across the street. And it calculates the amount of cars a day and the average speed. Speeds aren’t super exact about 10% deviation. But enough for that solution.
Hi, excellent tutorial thank you, can i take your PCA9685.py file please ? Regards.
learn.adafruit.com/adafruit-16-channel-pwm-servo-hat-for-raspberry-pi/using-the-python-library
here is pca-9685 adafruit e used this library and board
What version of OpenCV did you use? I’m using 4.2.0 and I’m having issues
OpenCV - 3.4.1
@Pysource _, contours, _ = cv2.findContours(color_mask, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE) '
I got an error, ValueError : not enough values to unpack (expected 3, got 2) what to do??
sir for the program u have shown at 13:00. fr me the camera opens and then within 1s closes automatically. please give some solution
implement try: except: ....this probably happes becouse first frame il black (camera need time to start)... you have to tell your script to ignore capturing error and try again until frame contain your tracking object
Hi thank you for the tutorial
what is the model of the small board you attached to the raspberry pi??
pca9685. see he imported the library for it.
thx
@@user-os1xg1rh4c why do we use PCA9685 board? , while the motor can directly connect with Raspberry pi
Where I can find or download the PCA9685 library?
You should integrate the library of your servo HAT. I recommend to use adafruit because is the simplest to integrate
Is it possible to use the same code using PC with windows, or Raspbery has some particularity? (not about gpio and servos, just to capture images)
Yes, the part regarding the image and color detection works exactly same way on any os (windows, linux and mac)
@@pysource-com Thank you. I think your project fantastic, I am starting in python just for to learn Opencv.
Here In Brasil this knowleges are scarces.
Hi all, from where can I get the PCA9685 library
from PCA9685 import PCA9685
Import Adafruit _9685
nice !!!! is it possible to do it with an arduino or an esp32?
I have a 3D model I need to measure the length, width, and depth of the feature and detect the features as a hole, pocket, planner ..could you help me to do the coding in Open CV with python
I am unable to install opencv in my raspberry pi.... would u please help
www.deciphertechnic.com/install-opencv-python-on-raspberry-pi/
Apologizes for what may be a silly question, in 13:46 , why contours is written like that: _ , contours , _ ?
dbader.org/blog/meaning-of-underscores-in-python
👍✌
i want to make robot tracking only me like this video by using deeplearning or yolo, how can i do? plz make new video plz~~
yolo is slow on raspberry...for face detection and recognition in real time you need more more more more conputazional power...
I suggest you to try face_detection module on python (It's a module installabe via pip on ubuntu)... i'ts face recognition is perfect and require only one photo... trust me... try it... find and try on google searching "python face_detection module" open pypy ...and have a good time :)
@@stardobas yeah... now i knew, i searched about that, so i am learning about tflite haha, anyway thank you to recomment ))
can this be done with python?
it's done with python
@@pysource-com i had an erroe that says
" _, contours,_ = cv2.findContours(red_mask, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
ValueError: not enough values to unpack (expected 3, got 2)"
can you send me your pca9685 files?
Why not just use: x // y instead of int(x / y)
Because the pixel has to be an integer, and in case for example the result is .5 , it has to be rounded otherwise you will get error
@@pysource-com I was under the impression that when using //, you will produce an integer, and / will produce a float.
@@brandonstringfellow1041 Oh yes sorry, I missed that. Yes you're right, using // as you said is a better solution than using int()
Why are you shooting the video towards the window with the sunlight coming through it? That's why you can't see objects. Horrible camera position. The camera should be facing oposite direction with the sunlight working with the webcam.
Sunlight >> Webcam >> Object . Not Webcam >> Sunlight >> Object. Spin the workspace 180 deg. so the sunlight shines on the object and works behind the webcam, not in front of it blocking the objects because the sunlight is shining in the webcam.
Mine is not working is this using Opencv 2.0 or will it work the same using Opencv 3.0.0
What is the servo hat called?
this is the servo model: mg996r