3d Hand Tracking in Virtual Environment | Computer Vision
Vložit
- čas přidán 26. 07. 2024
- Visit brilliant.org/Murtaza/ to get started learning STEM for free, and the first 200 people will get 20% off their annual premium subscription.
In this video, we will learn how to track hands in a 3D Environment. We will write the Hand tracking code using python OpenCV and CVZone. From there we will transfer the data to our unity 3D Environment.
🚀🚀 My Urdu/Hindi AI CZcams Channel 🚀🚀
/ @murtazahassan01
Download Code and Files:
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-...
👉 CZcams 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
00:00 Intro
02:42 Webcam
04:51 Hand Tracking Python
07:26 Prepare Data
14:28 Sending Data to Unity
17:41 Unity Recieve Data
21:15 Create Hand
25:02 Hand Tracking Script
42:23 Adding Lines
46:25 Linking Lines
54:58 Environment
This video was sponsored by Brilliant.
One of the best projects, and we can also facilitate the work so that we can associate a 3D character with the engine. This is a wonderful thing
Very excited about this video, I was looking forward to 3D stuff since a 2D pose estimation video you did- thank you and I'll be sure to try this
Super Video, super project. As always from you! one of the best channels on yt.
best tutorial i have seen related to computer vision and unity. thanks a lot. please do more videos
BROTHER, YOU ARE THE BEST!!! You oooh really helped me!! THANK YOU VERY MUCH!
This video won you a subscriber!
you have really outdone yourself this time
Wow amazing... I'm watching your all videos. Really appriciate your knowledge. Please give us more tutorial like this. Can u give more tutorials for starting how to code augmented reality? It will be a great help. God bless you
Incredible tutorial. Very informative without being redundant. This is what the internet was for!!!
Thank you so much for this knowledge. Subscribed!
You're awesome, Murtaza.
Great stuff thanks!
You're a real life saver. Thanks a lot!
Best tutorial for handtracking I've seen on CZcams. Keep up the good work!
Many thanksss!!!!!🤩
This is awsome! I want to try this on my own and develop it! Do you think, if I make the unity 3d enviorment complex, is the detection or all the other process gonna get laggy??
keep up the good work
Nice project sir 👍
E là lớp phó gương mẫu, e chúc thầy và cô Thuỷ mạnh khoẻ, hạnh phúc và có nhà mới thật đẹp ạ
great, thanks you
Thanks for the nice and interesting project. How will it work on a SBC like Jetson Nano? What I don't understand is how this software will be able to utilize the GPU?
That's great 🤩 sir
amazing....
awesome project bro....amazing. one question: are u using the usual unity collidor components to detect collision or what? that part is missing in your video. how u detected collision?
Hello Sir, I had a question. Can we deploy DL models inside a Desktop App for Windows/Linux? I searched for solutions but couldn't come up with any reasonable ones
ArgumentOutOfRangeException: Index and count must refer to a location within the string.
Parameter name: count
Hey man, great video.
But use this line will yield a better control
float x = float.Parse(points[i*3])/80-8;
float z = float.Parse(points[i*3 +1])/80-5;
float y = float.Parse(points[i*3 +2])/80;
You need to transform the coordinate from OpenCV to Unity.
You use:
float x = 5 - float.Parse(points[i*3])/100 in your video
However, this will reverse the coordinates of your hand.
To transform the coordinate, you will need to turn the middle point in OpenCV from (0.5x, 0.5y) to (0,0)
In this case, you will need to subtract the x value by 80, and then minus 8. and y value by 80 and then minus 5
Hey ! thanks for this. Did you figure out how to make te hand go back and forth? The "point0" does not move on the z axis. tanks!
now i am in a good mood
Excelent
Ты очень крутой, спасибо!
the possibilities are endless. will certainly play around with this
a very nice tutorial
Thank you~~!!!!!
Work bot, thanks broo
thank brooooooo !!!!!!!!!!
great video:) is it possible to show both hands at the same time?
Hai...thankyou so much for this video, this was so helpfull for me to make a project with this method. its work for me but can u give me another video about how the hands can grab the object like do some 360 move for the object, hope u saw this message, thankyou
hello Friend would you help me do it for online game capture? people use CV to detect enemies and attacks on aim does this do the same?
hello sir, can you explain about udp receive scripts?
thanks
May I know sir, how you have integrated the camera?
Hello, nice work! I wanted to know if there was a way to create a system for grabbing objects that are in unity, could anyone tell me?
Hello sir, I want to ask why the effect line I made is separated from the sphere
Has anyone a solution for the z coordinate estimation?
Can we bring this hand tracking on tft display or other display so we are able to use it without computer like tracking face tracking hands tracking whatever but with out computer pc how can we do this
Hello! Can you give me a solution to build project as a one exe file?
he is going to make revolution in computer vision
just tell me can't we cover our points like it we have red point and green lines as attachment, so we can increase the thickness and change the color in unity. so by this can't we create a real looking human hand
Everything is perfect . One question Can I grab the cube also?
You can, but its extremely diffcult!
@@055pq2 did you figure out how to?
Does anybody know how I can use the hand tracking as input so instead of colliding with the cube at the end, moving my hand left or right will move the cube left or right. Im trying to make a game with openCV using Unity for a school project and I am a bit stuck!
07:18 min
AttributeError: partially initialized module 'cv2' has no attribute 'gapi_wip_gst_GStreamerPipeline' (most likely due to a circular import)
Does it work when published to android?
what is the z coordinate in hand track output ?
Is hard implement to recognize more hands. Like both hands, or 4 hands. For example 2 players use both hands to play game.
How do I get the virtual hand in unity not to scale when I move my real hand forward and backwards to the camera
Can this work on mobile? Amazing video tutorial!!
Hey, good video. Could you post the code on how to move the hand on the z axis? That would be very helpful.
u can use code from this video czcams.com/video/jsoe1M2AjFk/video.html but using point 0 and 17 from your hand
@@f1l1p10 thanks
Anyone has it?
what is the algorithm used in this project
Hey, great video. I was wondering how you could implement the python so that it opens up whenever the unity project opens up?
I need it!
Hi! You can Import "os" library to python and use "os.startfile(path to your .exe file)" in order to execute the compiled Unity Project.
Does anyone know a way to implement two hands in Unity I already made it so it can track two in OpenCV But I'm having trouble implementing it in unity
hello Murtaza'sn pls do project > (face detection for registration in web) and use TensorFlow
pls tell me can I use this to grab a object how im trying its not working pls pls tell
How to create a build of this application? Is it necessary to run the code in python and in c#? I don't understand.
Sir, can you do a video about face recognition and object detection(yolo) in a single python script, so that both run at the same time
how can i make this work if I wanted to make a android build from unity and use the phone camera to do the hand tracking
Can you make a video where you do evrything in Unity. There is Opencv module in UNity also right. This will be easy for deployment and more advance project. I couldnt find any proper video explaing it.
There is an opencv package at asset store what you can play with
What the performance in using in a mobile?
Hi! I'm new ! How can I start in this field of Computer Vision? My dream is work in this kind of projects :)
I have a issue. I dont know what the app that you used to code python in is called or where to download it. please help
Can this algorithm run on mobile devices like iOS or Android?
is 2gb ram of respberry pi 4 is sufficient for making opencv Projects.. like find contours
Can u plzz say wt is the objective and scope of this project
all workеd baby
all done points working but lines not , error is coming the variable origin of Line code has not assigned in the inspector but I had linked all the line and so many errors for many lines
What logic can I use so that when separating or moving the hand away the same thing happens in the 3D environment instead of the hand being scaled? I've tried everything and I can't find a solution.
for z , in lmList dictionary you have a center position yo can use math.hypot to calculation 0 position with center position and with numpy.interp you can make a relation with this space and plus it to z positions , my language is not English and i can explain this good but I hope you understand how is it work!
Can you elaborate on this? What would the code look like?
hey sir, You done a great job but can you guide or make a tutorial for the hand tracking android application using mediapipe and unity
wher can I download UDP receive Please??????????
Where can I find the udp script? I didn't find it on the website.
amazing
make new project crowd counting !!!!!!
When linking the lines, I create the LineCode as a new component for all the lines, but I can't change them individually. Changing the origin and destination points for one changes the origin and destination points for ALL THE LINES. HELP
Great cheat, a friend advised.
Can we make the hand look like actual hand?
Hello sir, i cant figure how do you add the z position of the hand tracking, i have tried using triangle similarity algorithm method to detect distance using single webcam but i get nowhere close to the solution. Since u mention the answer for moving hand backward and forward is easy can u explain on that?
i am getting this error even though i installed mediapipe
Traceback (most recent call last):
File "E:/Alqadib/VirtuaLab/comp vision/main.py", line 1, in
from cvzone.HandTrackingModule import HandDetector
File "C:\Users\zeesh\AppData\Local\Programs\Python\Python39\lib\site-packages\cvzone\HandTrackingModule.py", line 10, in
import mediapipe as mp
ModuleNotFoundError: No module named 'mediapipe'
make video on 3d face recognition android app
can tihs work on android too?
how we can use phone camera ??
Orang Vrindavan pada pinter pinter yah
amazing tutorial! .. Ive been trying for the last 2 hours to make the hand move on z axis, but the point 0 wont go back and forth.... any hints?? thank you
can we build this in mobile?
how i can save the python script in unity ?
There's some kind of error in the "extend" part of the code, I keep getting: IndexError: list index out of range
Edit: OK, I narrowed it down - the lmList list only gets 2 dimensions(x and y) and not the z.
Why would that be?
Hey, I am having the same issue, did you ever end up figuring out why lmlist is refusing to give z values?
@@allamerican9414 Upgrade your cvzone package using pip
Can we build apk out of it???
Face Liveness Detection That With Web App For Registration
Process
please do this project
sir collision in unity is not so perfect in this way the hand many times enters the box bcz of hard code points it get from python
Thank you so much, but I have a question? Will it work on mobile android/ios?
Did someone find how to move on the z axis ? I'm trying it so hard ! because the z is based on the wrist point so it stays at 0 ...
Hey, did you find a solution?
@@calvinthapro616 i didnt find one can you sent me the code my english and python knowledge is noct so good
how do i add 2 hands to unity
Hi sir...can u please make a one vedio on how to start a career in machine learning and artificial intelligence as a beginner....what basics we should cover before entering this field.
.. please it's very important forany people like me
Good Afternoon Sir. Sir i am using a depth camera that is intel realsense d435i instead of a normal webcam for this hand tracking but this error ie (index and count must refer to a location within the script ) is showing to me when i write the code ie:
data = data.Remove(0, 1);
data = data.Remove(data.Length-1, 1).
This error is not shown in the case of normal webcam but in the case of intel realsense depth camera this error is shown. Hoping for a fast reply need urgently.
Use this `data = data.Trim(new char[]{'[',']'});`
i am gonna guess that means the hand script is not getting any data, try putting all the code in an if statement. First set the variable "string data = udpReceive.data;" and then add this if statement, "if ( data.Length != 0 ) {Put_All_Code_Here}"
Sir my pc can not inastall mediapipe
really cool, but this project need python server to run the hand tracking. so, it cannot separate with the server when the unity build into mobile platform, I mean it cannot run only using unity. thats sad.
Theres a system to use python in unity
@@Lightyboii really? run python server? how?
@@coderserabutan theres a Python addon in unity. And AFAIK it does support modules. Not sure about Android though. Havent used unity in a while.
I got an error when extracting the lmlist data, did anyone have the same problem
its lmList