Sign language detection with Python and Scikit Learn | Landmark detection | Computer vision tutorial

Поделиться
HTML-код
  • Опубликовано: 27 дек 2024

Комментарии • 419

  • @ComputerVisionEngineer
    @ComputerVisionEngineer  Год назад +7

    Did you enjoy this video? Try my premium courses! 😃🙌😊
    ● Hands-On Computer Vision in the Cloud: Building an AWS-based Real Time Number Plate Recognition System bit.ly/3RXrE1Y
    ● End-To-End Computer Vision: Build and Deploy a Video Summarization API bit.ly/3tyQX0M
    ● Computer Vision on Edge: Real Time Number Plate Recognition on an Edge Device bit.ly/4dYodA7
    ● Machine Learning Entrepreneur: How to start your entrepreneurial journey as a freelancer and content creator bit.ly/4bFLeaC
    Learn to create AI-based prototypes in the Computer Vision School! www.computervision.school 😃🚀🎓

  • @joque4
    @joque4 9 месяцев назад +17

    For all who are getting errors like "inhomogeneous shapes" while training on big datasets take into account that the MP Hands processing not always return 42 features (sometimes it just doesn't predict the coordinates well enough).
    To avoid this situations always check the length of every array. You must have the same amount of images and labels, and the labels (landmark coordinates) should have the same shapes.
    Just remove the samples that doesn't return all the landmarks or doesn't work well with the Mediapipe hands solution, to ensure all the data has the same shape and to avoid these numpy errors (and bad models).

    • @RAHUL-dt5xm
      @RAHUL-dt5xm 8 месяцев назад +1

      can you help me. when I trained only one gesture nothing else, but the system detects untrained gestures as the trained gesture why? any idea

    • @aryanrana-o6n
      @aryanrana-o6n 8 месяцев назад +2

      can you please share the changed code

    • @mohamedlhachimi2933
      @mohamedlhachimi2933 7 месяцев назад +2

      i think guys to solve this problem we had to tell the collect data script to save just frames where he could detect our hands else we will store bad models that will ends with this getting errors like "inhomogeneous shapes" , i actually try to solved this problem by not moving my hand when collecting data and making my model else you can try this code to check your images that are stored
      This script will only print the paths of the images that are deleted due to no hands being detected. It won't display any image windows.
      ##########################################"
      import os
      import cv2
      import mediapipe as mp
      def process_and_show(image_path, mp_drawing):
      mp_hands = mp.solutions.hands
      hands = mp_hands.Hands()

      # Read the image
      image = cv2.imread(image_path)
      image_rgb = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)

      # Detect hands and landmarks
      results = hands.process(image_rgb)

      if not results.multi_hand_landmarks:
      print(f"Deleted image: {image_path}")
      # Delete the image with no hands detected
      os.remove(image_path)
      # Path to your data folder containing subfolders
      data_folder = "data"
      mp_drawing = mp.solutions.drawing_utils
      mp_drawing_styles = mp.solutions.drawing_styles
      # Iterate through subfolders
      for folder_name in os.listdir(data_folder):
      folder_path = os.path.join(data_folder, folder_name)
      if os.path.isdir(folder_path):
      print(f"Checking images in folder: {folder_name}")
      # Iterate through images in the folder
      for filename in os.listdir(folder_path):
      if filename.endswith(".jpg") or filename.endswith(".png"):
      image_path = os.path.join(folder_path, filename)
      process_and_show(image_path, mp_drawing)

    • @pawnidixit1084
      @pawnidixit1084 4 месяца назад

      I understood the problem but can't really put it in the program. could you explain it please?

    • @clementdethoor5533
      @clementdethoor5533 3 месяца назад +5

      Just add in create_dataset :
      if (len(data_aux) == 42):
      data.append(data_aux)
      labels.append(dir_)

  • @jesussachez5468
    @jesussachez5468 Год назад +18

    Hello from Mexico!
    I love your job, I did each step in the same way as you, and I had no difficulties, I really feel very grateful for the time you spent teaching us.
    Congratulations teacher!
    👨‍🏫

  • @thesoftwareguy2183
    @thesoftwareguy2183 9 месяцев назад +1

    Sir!! You have my respect I have really learned lots of things in your whole video . Just keep making this ML/DL Project videos , that you have done like implementing from scratch any exciting ML/DL project.
    Just Keep Going Sir!!!
    Thankyou So much!!✨✨✨✨✨✨❤❤❤❤❤❤

  • @shwetaevangeline
    @shwetaevangeline 8 месяцев назад +4

    Thank you so much, sir for this wonderful project. I've completed my term project easily with the help of your video. Loved how we can create our own data instead of getting it from somewhere else.

  • @e2mnaturals442
    @e2mnaturals442 11 месяцев назад +2

    hello from Nigeria
    i must say thanks for this video
    it was short, precise and educative
    yes, i had some errors which i was able to handle due to my past knowledge on Deep Learning. And for those that had issues with the disparity in the length of the data, you can always pad to its maximum length
    currently, i have a model that can identify 26 classes correctly and i will definitely increase the classes. i made each classes to have 700 images under different lighting condition
    thanks for all you do.

    • @ijaspr5486
      @ijaspr5486 11 месяцев назад

      bro can you send me the file for your project

    • @e2mnaturals442
      @e2mnaturals442 11 месяцев назад

      @@ijaspr5486 like the whole file?

    • @rarir0012
      @rarir0012 8 месяцев назад

      Could you share your GitHub link of your project?

    • @aryanrana-o6n
      @aryanrana-o6n 7 месяцев назад

      @@e2mnaturals442 yes like github code or i give you my social media id

    • @TheDreamsandTears
      @TheDreamsandTears 6 месяцев назад

      can you share your code? I'm having somre errors, while I try do identify the letters. Also, in your code, could you do with signs with both hands and with movements? @e2mnaturals442

  • @moMo-zu4ds
    @moMo-zu4ds 6 месяцев назад

    Having trouble with my ML project now, but so happy to find your video. Thanks for all the work!!

  • @WelcomeToMyLife888
    @WelcomeToMyLife888 Год назад +5

    great tutorial on how to organize the project into separate steps!

    • @ComputerVisionEngineer
      @ComputerVisionEngineer  Год назад +2

      Good organization is the key to a successful project I am happy you enjoyed the video! 😄🙌

  • @1hpxalphaop741
    @1hpxalphaop741 8 месяцев назад

    srsly like the best video, now i can train my custom hand gestures etc. even, thank youu❤❤

  • @duleamihai2202
    @duleamihai2202 Год назад +25

    For those who faces the error where it can't convert the 'data' values from dictionary data_dict, just make sure that in photo samples you are giving the full hand because if not, there will be inconsistent data and the lists will not have the same lenght inside the data_dict['data']. Do again the photos retrieve part and all should be fine

  • @artiste9357
    @artiste9357 11 месяцев назад +1

    Thanks a lot! I really appreciate keeping this under an hour as well :))

  • @aryanrana-o6n
    @aryanrana-o6n 8 месяцев назад +1

    Really Thank you sir. Great Project you helped me a lot to learn many things. After multiple errors solving finally i succeeded in making full project.

  • @John-xi2im
    @John-xi2im 9 месяцев назад

    very awesome tutorial with brilliant idea and conceptualization. Thanks a lost Felipe!

  • @kane_jester
    @kane_jester Год назад +4

    sir , the projects get closed if more hands are placed in the real-time video , i know that randomforest classifier uses only certain features , is there a way so that the program doesnt close if more hands are in the video

  • @vignesh.v4247
    @vignesh.v4247 4 месяца назад +1

    The best tutorial ever!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

  • @febriandewanto2447
    @febriandewanto2447 8 месяцев назад

    Thank you, very clear what was taught. I want to ask what if the dataset from a public video had the initial and final movements? whether the start and end frames go into training . and using deep learning?

  • @susanlaime1318
    @susanlaime1318 3 месяца назад

    Hello! Thank you so much for the tutorial!! :)
    Although I have trouble when trying to find the script's code at the very beginning, how can I get the code and connect my camera to get the 100 frames? Is it on GitHub? With what name? It seems to be there only the code that we built in the video...

  • @UtsavKuntalwad
    @UtsavKuntalwad Год назад +3

    Hello, i was adding new alphabets to the dataset and got this error , unable to solve : " File "D:\Major project\.Major Project\code\train_classifier.py", line 11, in
    data = np.asarray(data_dict['data'])
    ValueError: setting an array element with a sequence. The requested array has an inhomogeneous shape after 1 dimensions. The detected shape was (400,) + inhomogeneous part."

    • @tvrtkokaurinovic7370
      @tvrtkokaurinovic7370 11 месяцев назад

      did you fix this error?

    • @yashaggarwal8605
      @yashaggarwal8605 26 дней назад

      Did you fix it?

    • @UtsavKuntalwad
      @UtsavKuntalwad 25 дней назад

      @@yashaggarwal8605 Yes , there was some problem with array dimension , so i had to change the dimension of the picture

    • @yashaggarwal8605
      @yashaggarwal8605 25 дней назад

      @@UtsavKuntalwad can you provide the code that you changed

  • @paradisofernando97
    @paradisofernando97 Год назад

    i love all that, you are very clearly and simply 😍😍

  • @emnahamdi-wq4mz
    @emnahamdi-wq4mz Год назад +2

    Hi! Great tutorial thank you. I have a question: does this program have data augmentation? and did u calculate the sensibility and accuracy of the program?

  • @CanalIFES
    @CanalIFES Год назад +1

    why do you use and random forest classifier algorithm?
    maybe it is better for it?
    could i try with a pretrained model to get better results?

    • @ComputerVisionEngineer
      @ComputerVisionEngineer  Год назад

      No particular reason why I used a Random Forest, I think pretty much any other classifier would have a similar performance in this case.

    • @CanalIFES
      @CanalIFES Год назад

      @@ComputerVisionEngineer Thanks felipe!!

  • @dinithnisal643
    @dinithnisal643 Год назад +2

    hello Sir, I follow your video for learning about computer vision .
    So I have a trouble with "DATA_DIR = './data'" , Is this file need to import from somewhere or should we need to prepare them? Can you help me to solve this?

    • @peterbarasa9190
      @peterbarasa9190 Год назад +1

      am also thinking the same. The images seem no to be there

  • @LeDucDatAI_LowToDeepAI
    @LeDucDatAI_LowToDeepAI Год назад +7

    Hello, I have watched your video and found it very informative. However, I was wondering if you could make a video for recognizing different characters for a sequence of movements, for example, the letter "J" or "Z." Thank you for your video.

  • @mariamartinez4860
    @mariamartinez4860 Год назад +2

    why does it close when you put another hand?

  • @zeroboom4
    @zeroboom4 9 месяцев назад +1

    I have tried it with arabic Sign language,and it did not working correctly, I get one letter almost every time and it's wrong letter, any ideas that can help me train the model. I got the dataset from kaggle.

  • @RohanVector
    @RohanVector 10 месяцев назад +1

    Some hand sign have two hand ,than what we can do that situation ?

  • @vamsianurag3415
    @vamsianurag3415 Год назад +2

    Hi, while going through this code i'm getting model_dict = pickle.load(open('./model.p', 'rb'))
    FileNotFoundError: [Errno 2] No such file or directory: './model.p' and I didn't find any model.p file in your repository

    • @ComputerVisionEngineer
      @ComputerVisionEngineer  Год назад

      Hey, you can create the model yourself following the steps I describe in the video. 😃🙌

  • @yaranassar1208
    @yaranassar1208 7 месяцев назад +1

    Hii!! I loved your video. I learned a lot. I just have one question, if at the end I want to form a sentence and print it, how can I save each character on the screen to have a full sentence at the end?

  • @touchwood8404
    @touchwood8404 8 месяцев назад +1

    The mediapipe library is giving error in installation what should I do?

  • @nilayguler8397
    @nilayguler8397 9 месяцев назад

    Thanks a lot! I really appreciate keeping this under an hour as well :)) We are trying to implement this model in Flutter to develop a mobile app. How can we create Flutter integration ?

  • @Mrimmortal10
    @Mrimmortal10 11 месяцев назад

    Thanks a lot bro, I watched many videos and i wasted a lot of time and finally found your video and done my project.

    • @ComputerVisionEngineer
      @ComputerVisionEngineer  11 месяцев назад +1

      You are welcome! Glad it was helpful! 😃

    • @RohanVector
      @RohanVector 11 месяцев назад +1

      Please send your github link please

    • @RohanVector
      @RohanVector 11 месяцев назад +1

      I got lot of error bro please please please please

  • @georgevalentin9483
    @georgevalentin9483 Год назад +2

    I checked the github repo and there are some changes compared to the video. Why are you substracting the min of x_ from x (data_aux.append(x - min(x_))), also for y ? Why is it necessary to do that instead of just append x the way it is to the array. I saw u did that in the data processing and also in the model testing. Thanks a lot!

    • @ComputerVisionEngineer
      @ComputerVisionEngineer  Год назад +1

      Hey George! Yeah, I sent that change in a new commit. It makes the solution more robust, you could think about it as a way of 'normalization'. This makes the classifier learn better than the (x, y) position of each landmark is not that important, the distance of each landmark to each other landmark is what matters most! 😃💪

    • @georgevalentin9483
      @georgevalentin9483 Год назад

      @@ComputerVisionEngineer Thanks a lot for the answer! I thought it has something to do with the mediapipe library and is a must, but it actually makes sense to be some kind of normalization. Thanks for you time!

  • @harshasshet6755
    @harshasshet6755 8 месяцев назад

    I am getting plots for every data set size which i have taken is it fine bcs i have plt.savefig function, annotated it so that the plt for every dataset size is saved in main data directory

  • @fragileaf1778
    @fragileaf1778 11 месяцев назад +1

    The camera crashes when I show more than one hand. Can you tell me how it can be fixed?

  • @radriyansyah05
    @radriyansyah05 2 месяца назад

    Sir, if i would create 10 samples different of course what should i do at the stage of using the source code? please give me an example🙏🏻

  • @Yousef_Osman2000
    @Yousef_Osman2000 3 месяца назад +1

    how do i get that function 18:10 ?

  • @bdtamilgamers8083
    @bdtamilgamers8083 Год назад +1

    Sir only 9 character can be trained plz help me to train 26 character

  • @biotekgaming3896
    @biotekgaming3896 Месяц назад

    how would one code finding the sign for letters that require you to move your hand?

  • @adn4779
    @adn4779 10 месяцев назад +1

    @ComputerVisionEngineer ValueError: X has 84 features, but RandomForestClassifier is expecting 42 features as input..I am getting this error when i run the inference_clasifier.py model...What change should i make in the code.....

    • @shwetaevangeline
      @shwetaevangeline 8 месяцев назад

      If you're getting this, that means you're showing something else that isn't in the data. Only show what you've captured. Or else simply increase number of classes and take different pictures from different angles.

    • @mohamedlhachimi2933
      @mohamedlhachimi2933 7 месяцев назад

      i think guys to solve this problem we had to tell the collect data script to save just frames where he could detect our hands else we will store bad models that will ends with this getting errors like "inhomogeneous shapes" , i actually try to solved this problem by not moving my hand when collecting data and making my model else you can try this code to check your images that are stored
      This script will only print the paths of the images that are deleted due to no hands being detected. It won't display any image windows.
      ##########################################"
      import os
      import cv2
      import mediapipe as mp
      def process_and_show(image_path, mp_drawing):
      mp_hands = mp.solutions.hands
      hands = mp_hands.Hands()

      # Read the image
      image = cv2.imread(image_path)
      image_rgb = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)

      # Detect hands and landmarks
      results = hands.process(image_rgb)

      if not results.multi_hand_landmarks:
      print(f"Deleted image: {image_path}")
      # Delete the image with no hands detected
      os.remove(image_path)
      # Path to your data folder containing subfolders
      data_folder = "data"
      mp_drawing = mp.solutions.drawing_utils
      mp_drawing_styles = mp.solutions.drawing_styles
      # Iterate through subfolders
      for folder_name in os.listdir(data_folder):
      folder_path = os.path.join(data_folder, folder_name)
      if os.path.isdir(folder_path):
      print(f"Checking images in folder: {folder_name}")
      # Iterate through images in the folder
      for filename in os.listdir(folder_path):
      if filename.endswith(".jpg") or filename.endswith(".png"):
      image_path = os.path.join(folder_path, filename)
      process_and_show(image_path, mp_drawing)

    • @luciferani8279
      @luciferani8279 6 месяцев назад

      Do not give 2 hands at the same on your camera

  • @hayatlr3000
    @hayatlr3000 Год назад +4

    great tutorial so helpful for my pfe project i actually have to do hand recognition identification biometric only but the hand contour you explained so well the part "this is the most important thing" and I really need help when it comes to the approach of how i can solve this if it? is possible for you to help me by doing a video of it ?cause its the first time for me working with python i usually work with Matlab. thank you again for this video

    • @ComputerVisionEngineer
      @ComputerVisionEngineer  Год назад +2

      Hey Hayat, I am glad you found it helpful! 😄 Do you mean making a video about how to be strategic when starting a project and choose the most promising approach? Sure, I can do a video about problem solving strategies! 😃🙌

    • @luongtranle2979
      @luongtranle2979 Год назад

      Do you have file word report ?

  • @prathamupadhyay1265
    @prathamupadhyay1265 Год назад +2

    How can I get accuracy for the letters predicted?
    Basically I want live accuracy for the letters that are predicted , since if you show any random hand gesture it will always predict some random letter, so it will be much better if you could also show live accuracy .Is it possible can u guide me a little bit through this?

    • @ComputerVisionEngineer
      @ComputerVisionEngineer  Год назад +1

      Try using the method 'predict_proba' instead of 'predict'. You wil get a probability vector for all the classes. Taking the largest number will give you the confidence value you are looking for. 💪💪

    • @prathamupadhyay1265
      @prathamupadhyay1265 Год назад

      @@ComputerVisionEngineer Thanks a lot you are amazing !!! 😃

    • @yashanchule9641
      @yashanchule9641 Год назад

      @@prathamupadhyay1265 bhai if u dont mind kya app apke code ki zip file mujhe share kar skte hai, coz im getting many errors and i have tried many steps but kuch ho nahi raha hai. PLZ!!!!!!

    • @yashanchule9641
      @yashanchule9641 Год назад

      plz bhai

    • @054_vishwadhimar4
      @054_vishwadhimar4 Год назад

      @@yashanchule9641 GitHub link is there..or have you tried that too?!

  • @abdulbarisoylemez
    @abdulbarisoylemez Год назад

    thank you my teacher, great a video , i tried it myself, I did it :)

  • @sandanuwan4441
    @sandanuwan4441 9 месяцев назад

    I am new to AI. I just want to know are we using Natural Language, Machine Learning and computer vision.

  • @MrFurious0007
    @MrFurious0007 Год назад +2

    Hello , great tutorial 😀can this same approach be applied for british sign language because that uses both hands to make gestures , also can this be deployed in the real world and used at production level ?

    • @ComputerVisionEngineer
      @ComputerVisionEngineer  Год назад +1

      You would need to make some edits in order to use it with both hands but I guess it would work, yes. Regarding the performance, yeah you could train it and improve it so it can be used at a production level. 🙌

    • @MrFurious0007
      @MrFurious0007 Год назад

      thanks @@ComputerVisionEngineer 😁i'll try and see if it works out

    • @MrFurious0007
      @MrFurious0007 Год назад +1

      Hey @@ComputerVisionEngineer , its not working efficiently for the british sign lang , maybe because it uses both hands , do you have any suggestions on how i can build up my project , it'll be a huge help , thanks

  • @prithvisingh2851
    @prithvisingh2851 Год назад +1

    I have trained my model using only numbers' data. It is working but the problem is it is only showing the numbers 9 or 1 in the frame. Do you think it's because of unclear data or problem in the training model.
    BTW great tutorial 👍

  • @saurabhmishra7487
    @saurabhmishra7487 7 месяцев назад +1

    The app crashes when using both hands. How can I fix this?

  • @miladsayedi59
    @miladsayedi59 7 месяцев назад

    can we make this project with pose detection models like openpose or deeppose? and what is the difference

  • @madhav8049
    @madhav8049 2 месяца назад

    will this work the same if i wanna use two hands??
    because in the indian sign language we use two hands

  • @iantang2048
    @iantang2048 Год назад

    Hi sir,
    Thanks for your tutorial.
    Yet, I a problem in locating the file(./data), and received an error message of [Errno 20] Not a directory: './data/.DS_Store'. while using "create_dataset.py". Currently all file are put in desktop, do you know why? (I m using MacBook)

    • @gXLg
      @gXLg Год назад +2

      The thing about Apple is that MacOS often puts a file called ".DS_Store" in the directory which stores some information. In your code where you iterate over folders, compare the name with ".DS_Store" and simply skip it

  • @MoominMoomin-f2b
    @MoominMoomin-f2b 4 месяца назад

    Hello! can you please tell me which ML algorithm you used here???

  • @MoominMoomin-f2b
    @MoominMoomin-f2b 4 месяца назад

    Hello!! Can you tell me which ML algorithm did you use in this?

  • @szmasclips1774
    @szmasclips1774 5 месяцев назад

    Great video but How do you do the collecting images part of the code?

  • @oterotube13
    @oterotube13 Год назад

    help!: setting an array element with a sequence. The requested array has an inhomogeneous shape after 1 dimensions. The detected shape was (7960,) + inhomogeneous part. Need to something to remove the bad part from the pickle file.

    • @OsazeOgedegbe
      @OsazeOgedegbe Год назад +1

      hello I am having the same problem. Could be share your solution if you find one. Thank you!

    • @mohamedlhachimi2933
      @mohamedlhachimi2933 7 месяцев назад +1

      i think guys to solve this problem we had to tell the collect data script to save just frames where he could detect our hands else we will store bad models that will ends with this getting errors like "inhomogeneous shapes" , i actually try to solved this problem by not moving my hand when collecting data and making my model else you can try this code to check your images that are stored
      This script will only print the paths of the images that are deleted due to no hands being detected. It won't display any image windows.
      ##########################################"
      import os
      import cv2
      import mediapipe as mp
      def process_and_show(image_path, mp_drawing):
      mp_hands = mp.solutions.hands
      hands = mp_hands.Hands()

      # Read the image
      image = cv2.imread(image_path)
      image_rgb = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)

      # Detect hands and landmarks
      results = hands.process(image_rgb)

      if not results.multi_hand_landmarks:
      print(f"Deleted image: {image_path}")
      # Delete the image with no hands detected
      os.remove(image_path)
      # Path to your data folder containing subfolders
      data_folder = "data"
      mp_drawing = mp.solutions.drawing_utils
      mp_drawing_styles = mp.solutions.drawing_styles
      # Iterate through subfolders
      for folder_name in os.listdir(data_folder):
      folder_path = os.path.join(data_folder, folder_name)
      if os.path.isdir(folder_path):
      print(f"Checking images in folder: {folder_name}")
      # Iterate through images in the folder
      for filename in os.listdir(folder_path):
      if filename.endswith(".jpg") or filename.endswith(".png"):
      image_path = os.path.join(folder_path, filename)
      process_and_show(image_path, mp_drawing)

  • @LegendMaster007
    @LegendMaster007 Месяц назад

    Please, what version of python works with this project?

  • @atharvakulkarni2059
    @atharvakulkarni2059 15 дней назад

    Which algorithm is used in this project

  • @AkshatManohar
    @AkshatManohar Год назад +1

    Hi,
    I am getting an error that ./data/.DS_Store is not a directory and is not found.

  • @mdemike1781
    @mdemike1781 Год назад

    If you train it in a specific place ex: your bedroom would this work like with the background of your kitchen or different place?

    • @ComputerVisionEngineer
      @ComputerVisionEngineer  Год назад

      Yes, by the way we are doing it in this tutorial, it should work if you change the background. 🙌

    • @mohamedlhachimi2933
      @mohamedlhachimi2933 7 месяцев назад

      @@ComputerVisionEngineer i think guys to solve this problem we had to tell the collect data script to save just frames where he could detect our hands else we will store bad models that will ends with this getting errors like "inhomogeneous shapes" , i actually try to solved this problem by not moving my hand when collecting data and making my model else you can try this code to check your images that are stored
      This script will only print the paths of the images that are deleted due to no hands being detected. It won't display any image windows.
      ##########################################"
      import os
      import cv2
      import mediapipe as mp
      def process_and_show(image_path, mp_drawing):
      mp_hands = mp.solutions.hands
      hands = mp_hands.Hands()

      # Read the image
      image = cv2.imread(image_path)
      image_rgb = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)

      # Detect hands and landmarks
      results = hands.process(image_rgb)

      if not results.multi_hand_landmarks:
      print(f"Deleted image: {image_path}")
      # Delete the image with no hands detected
      os.remove(image_path)
      # Path to your data folder containing subfolders
      data_folder = "data"
      mp_drawing = mp.solutions.drawing_utils
      mp_drawing_styles = mp.solutions.drawing_styles
      # Iterate through subfolders
      for folder_name in os.listdir(data_folder):
      folder_path = os.path.join(data_folder, folder_name)
      if os.path.isdir(folder_path):
      print(f"Checking images in folder: {folder_name}")
      # Iterate through images in the folder
      for filename in os.listdir(folder_path):
      if filename.endswith(".jpg") or filename.endswith(".png"):
      image_path = os.path.join(folder_path, filename)
      process_and_show(image_path, mp_drawing)

  • @sourabhchandra1740
    @sourabhchandra1740 Год назад +6

    Hlo Sir, very nice video.... I also want to make a similar project ... But there will a bit difference.. I want to generate the entire subtitle for people who can't speak using their hand gestures during video conferencing in real time.
    Can you please guide me with the same ... Bcoz I completely a beginner. Your help will be appreciated. Thanks in advance. 😀

    • @ComputerVisionEngineer
      @ComputerVisionEngineer  Год назад +4

      Hey Sourabh, it sounds like a complex and very cool project! I would start by saving all the symbols you detect, its confidence score, and the duration of time you detect them so you can analyze this info later on. This is going to help you to understand the problem a little better and also it is going to help you to define rules in order to achieve your goal. 😃💪

    • @Abhaykumar-bu7ei
      @Abhaykumar-bu7ei Год назад

      Hi Sourabh were you able to make it if yes could you please share some update or code for the same

  • @assassinhi4889
    @assassinhi4889 10 месяцев назад +1

    it's showing the error: ValueError: setting an array element with a sequence.
    after loading the dictionary in the model.

    • @mohamedlhachimi2933
      @mohamedlhachimi2933 7 месяцев назад +1

      i think guys to solve this problem we had to tell the collect data script to save just frames where he could detect our hands else we will store bad models that will ends with this getting errors like "inhomogeneous shapes" , i actually try to solved this problem by not moving my hand when collecting data and making my model else you can try this code to check your images that are stored
      This script will only print the paths of the images that are deleted due to no hands being detected. It won't display any image windows.
      ##########################################"
      import os
      import cv2
      import mediapipe as mp
      def process_and_show(image_path, mp_drawing):
      mp_hands = mp.solutions.hands
      hands = mp_hands.Hands()

      # Read the image
      image = cv2.imread(image_path)
      image_rgb = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)

      # Detect hands and landmarks
      results = hands.process(image_rgb)

      if not results.multi_hand_landmarks:
      print(f"Deleted image: {image_path}")
      # Delete the image with no hands detected
      os.remove(image_path)
      # Path to your data folder containing subfolders
      data_folder = "data"
      mp_drawing = mp.solutions.drawing_utils
      mp_drawing_styles = mp.solutions.drawing_styles
      # Iterate through subfolders
      for folder_name in os.listdir(data_folder):
      folder_path = os.path.join(data_folder, folder_name)
      if os.path.isdir(folder_path):
      print(f"Checking images in folder: {folder_name}")
      # Iterate through images in the folder
      for filename in os.listdir(folder_path):
      if filename.endswith(".jpg") or filename.endswith(".png"):
      image_path = os.path.join(folder_path, filename)
      process_and_show(image_path, mp_drawing)

  • @livelife846
    @livelife846 Год назад

    Thank you so much it's helpful for me 😊

    • @ComputerVisionEngineer
      @ComputerVisionEngineer  Год назад

      Glad to hear it is helpful! 😃🙌

    • @RohanVector
      @RohanVector 11 месяцев назад

      size.width>0 && size.height>0 in function 'cv::imshow' error sir

  • @iinfinixvilla389
    @iinfinixvilla389 5 месяцев назад

    Hola from India sir, Sir i enjoyed your video very much. sir, I have a small doubt can you tell me how to check and the accuracy of the model being trained.

  • @frankleonardoluquelineros9389
    @frankleonardoluquelineros9389 Год назад

    Really great video tutorial! Why did you choose scikt learn and not Yolo? How many changes would you have to make to use Yolo?

    • @ComputerVisionEngineer
      @ComputerVisionEngineer  Год назад

      Do you mean using Yolo for object detection instead of mediapipe + Scikit learn? It can be done. You just need to train it. I did it with mediapipe + Scikit learn only for simplicity, and I think it also results in a more robust classifier. 🙌

  • @swagatbaruah522
    @swagatbaruah522 Год назад +1

    EVERYTHING IS WORKING FINE, EXCEPT FOR THE FACT THAT THE MY FINAL PROGRAM IS UNABLE TO RECOGNIZE ANY SIGN. IT JUST GIVE EVERY SIGN THE SAME LABEL WHATEVER THERE IS IN THE INDEX 0 OF THE LABEL LIST. I don't understand why its not working???

  • @kiranmahapatra8716
    @kiranmahapatra8716 Год назад +1

    Sir please help............during training it shows value error..data = np.asarray(data_dict['data'])
    ValueError: setting an array element with a sequence. The requested array has an inhomogeneous shape after 1 dimensions. The detected shape was (199,) + inhomogeneous part......for 3 class

    • @SohamKaranjkar
      @SohamKaranjkar Год назад +1

      i got the same error, were you able to solve it?

    • @krzysztofgalek5276
      @krzysztofgalek5276 11 месяцев назад +1

      Did u solve it?

    • @e2mnaturals442
      @e2mnaturals442 11 месяцев назад

      i was able to sort it using padding
      if you want me to explain more, i will be glad to

    • @Elenas1178
      @Elenas1178 10 месяцев назад

      @@e2mnaturals442 please explain

    • @preetirathod5244
      @preetirathod5244 5 месяцев назад

      ​@@e2mnaturals442can u please explain it

  • @raziehahmadi4185
    @raziehahmadi4185 7 месяцев назад

    Thanks for your good tutorial
    How to act for the rest of the letters?

  • @VnZR_
    @VnZR_ Год назад +1

    Hi... Since many signs involve some type of movement, I wonder if videos could be used in place of pictures. I hope you can reply to me because your video is very helpful for us. Thanks in advance.

    • @ComputerVisionEngineer
      @ComputerVisionEngineer  Год назад +2

      Yes, you could try with video classification. 🙌

    • @VnZR_
      @VnZR_ 6 месяцев назад

      ​@@ComputerVisionEngineer how to insert video type in pycharm?

    • @VnZR_
      @VnZR_ 6 месяцев назад

      I hope you can help us..thank you

    • @VnZR_
      @VnZR_ 6 месяцев назад

      Is there a front - end that can connect in pycharm?

  • @ivanvijandi2052
    @ivanvijandi2052 3 месяца назад

    Mas argentino imposible jsjs, Gran video!

  • @OsazeOgedegbe
    @OsazeOgedegbe Год назад +1

    Hello!
    I tried to do exactly what you did but using the 26 alphabets. I don't know where I went wrong but the data list when converted to an nparray is giving me this error: ValueError: setting an array element with a sequence. The requested array has an inhomogeneous shape after 1 dimensions. The detected shape was (2581,) + inhomogeneous part. I have so many things but I am utterly stuck. Please do you have any idea on how I can fix this error.

    • @ComputerVisionEngineer
      @ComputerVisionEngineer  Год назад

      Hey, not sure what could be going on, although it is always a good practice to take projects one step at the time. Try to do it with only 2 or 3 symbols and work your way up. It will make things easier to debug. 😃🙌

    • @OsazeOgedegbe
      @OsazeOgedegbe Год назад

      @@ComputerVisionEngineer Thank you. I took your advice and was able to fix the problem by breaking it down. Turns out the data for 3 letters were not properly captured but I re captured them and the 26 letters are working perfectly!! Thank you.

    • @ComputerVisionEngineer
      @ComputerVisionEngineer  Год назад

      @@OsazeOgedegbe Amazing! Happy to hear you solved the problem! 😃

    • @foru1854
      @foru1854 Год назад

      @@OsazeOgedegbe i am actually also facing the same error how can i identify which letter data is not captured correctly? pls can you tell me

    • @OsazeOgedegbe
      @OsazeOgedegbe Год назад

      @@foru1854 What I did was start with the first letter (A) , did carried out all the steps and trained the model. When I saw it worked, I added the second letter and did the two; then the third and that gave me the error so I knew the third had a problem and recaptured. I followed on like that and when I add a new one and I get the error I will know that alphabet needs to be recaptured. Hope that helps

  • @foru1854
    @foru1854 Год назад

    hey its does not work for more than 5 sign can show value error about the shape can you please fix it

  • @nurulfadillah1248
    @nurulfadillah1248 Месяц назад

    thank you so much, you helped me

  • @texsesyt2902
    @texsesyt2902 Год назад +2

    hello sir i am getting this error
    ValueError: The least populated class in y has only 1 member, which is too few. The minimum number of groups for any class cannot be less than 2.
    x_train, x_test, y_train, y_test = train_test_split(data, labels, test_size=0.2, shuffle=True, stratify=labels)
    i observe that if i remove stratify i donot get error but after that i get
    0.0% of samples were classified correctly !

    • @ComputerVisionEngineer
      @ComputerVisionEngineer  Год назад

      Hey, how many different symbols are you trying to classify? How did you collect the data for each symbol?

    • @texsesyt2902
      @texsesyt2902 Год назад

      @@ComputerVisionEngineer I change number_of_classes to 5 and i collect data through opencv by capturing images(by using the method describe in this video)
      Note: python version 3.11.2

    • @texsesyt2902
      @texsesyt2902 Год назад

      total 5 symbols each got 0 to 99 images

    • @ComputerVisionEngineer
      @ComputerVisionEngineer  Год назад +1

      There is a probably a bug with the data. Take a look at 'labels', how many elements are there for the different classes? Is it an array of integers or is it other data type?

    • @texsesyt2902
      @texsesyt2902 Год назад

      @@ComputerVisionEngineer Now i am getting this error when i make 25 classes(for each alphabet).
      data = np.asarray(data_dict['data'])
      ValueError: setting an array element with a sequence. The requested array has an inhomogeneous shape after 1 dimensions. The detected shape was (2471,) + inhomogeneous part.

  • @tihbohsyednap8644
    @tihbohsyednap8644 Год назад +1

    Sir kindly help me with this error
    .
    .
    ValueError: The least populated class in y has only 1 member, which is too few. The minimum number of groups for any class cannot be less than 2.

    • @tihbohsyednap8644
      @tihbohsyednap8644 Год назад

      Sir kindly help me with this error. I am working on this project as my final year project and I have to extend it as my major project work.

    • @mohamedlhachimi2933
      @mohamedlhachimi2933 7 месяцев назад

      i think guys to solve this problem we had to tell the collect data script to save just frames where he could detect our hands else we will store bad models that will ends with this getting errors like "inhomogeneous shapes" , i actually try to solved this problem by not moving my hand when collecting data and making my model else you can try this code to check your images that are stored
      This script will only print the paths of the images that are deleted due to no hands being detected. It won't display any image windows.
      ##########################################"
      import os
      import cv2
      import mediapipe as mp
      def process_and_show(image_path, mp_drawing):
      mp_hands = mp.solutions.hands
      hands = mp_hands.Hands()

      # Read the image
      image = cv2.imread(image_path)
      image_rgb = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)

      # Detect hands and landmarks
      results = hands.process(image_rgb)

      if not results.multi_hand_landmarks:
      print(f"Deleted image: {image_path}")
      # Delete the image with no hands detected
      os.remove(image_path)
      # Path to your data folder containing subfolders
      data_folder = "data"
      mp_drawing = mp.solutions.drawing_utils
      mp_drawing_styles = mp.solutions.drawing_styles
      # Iterate through subfolders
      for folder_name in os.listdir(data_folder):
      folder_path = os.path.join(data_folder, folder_name)
      if os.path.isdir(folder_path):
      print(f"Checking images in folder: {folder_name}")
      # Iterate through images in the folder
      for filename in os.listdir(folder_path):
      if filename.endswith(".jpg") or filename.endswith(".png"):
      image_path = os.path.join(folder_path, filename)
      process_and_show(image_path, mp_drawing)

  • @livelife846
    @livelife846 Год назад

    Who can I add more sign because it's getting error when I try to add more signs

  • @lolalikee
    @lolalikee Год назад

    Can the project created by exported to an .exe? Im worried because of the pickle file.

  • @philipokposo6265
    @philipokposo6265 Год назад

    Great content, thank you so much.

  • @septian5761
    @septian5761 7 месяцев назад

    can i ask how can you moved this into mobile / android studio

  • @senpaihere6512
    @senpaihere6512 9 месяцев назад

    hehe subscribed, tysm for this it was very helpful

  • @makiizenin
    @makiizenin Год назад

    Hello sir, I got a one problem. I made the same with you and my code is worked but it only showed at least 5 mins for capturing then the camera will shutdown automatically and got some errors. :((((

  • @ajisumiardi6736
    @ajisumiardi6736 5 месяцев назад +1

    You're great, Man,, thank you for teaching us and put lots of research first to ensure Windows user can replicate the project too,,
    .
    let me leave a logs here for other Windows users:
    1. dont forget using packages with exactly same version as mentioned in requirements_windows.txt.
    2. Use numpy 1.23.3 version,, I take a sneak peek to your terminal output that give me information if you use numpy with that version,, at first my terminal installed numpy 2.0 version, but no luck, and then dowgrade it,,
    3. If you succesfully Instal Cmake via terminal, but still got error when compiling, I suggest you to install it by install Visual Studio first
    I've spent my first 4 hours dealing with those error before finally made it,,

  • @000HASNAIN_AHMED
    @000HASNAIN_AHMED Год назад

    Thank you sir for this video

  • @054_vishwadhimar4
    @054_vishwadhimar4 Год назад

    did you use any particular research paper for this project. i have to make a report for my project and cite a reference and it would help if you can tell me which one you used or which one will be the most similar to this project.

    • @ComputerVisionEngineer
      @ComputerVisionEngineer  Год назад

      Hey, I didn't use any research paper for this project. 🙌

    • @054_vishwadhimar4
      @054_vishwadhimar4 Год назад

      @@ComputerVisionEngineer alright then...but do you have any idea which one would be similar or near to this?

    • @aakritityagi7203
      @aakritityagi7203 Год назад

      @@054_vishwadhimar4 hi, did you get the research paper?

    • @054_vishwadhimar4
      @054_vishwadhimar4 Год назад

      @@aakritityagi7203 no I did not actually... thankfully my mentor did not force me to find one and accepted multiple youtube.videos as references

  • @martinsilungwe2725
    @martinsilungwe2725 Год назад

    Is there a way that we can contact you apart, from the comments section, because I really need your help on the splitting of the datasets, I have followed every step in the tutorial but to no avail, it it not working for me....
    The part were you are splitting the data to training set and test set, to be specific

  • @saivaraprasadmandala8558
    @saivaraprasadmandala8558 11 месяцев назад

    Error:
    Traceback (most recent call last):
    File "h:\Mini Project\Mallikarjun Project\sign-language-detector-python-master\sign-language-detector-python-master\inference_classifier.py", line 7, in
    model_dict = pickle.load(open('./model.p', 'rb'))
    ^^^^^^^^^^^^^^^^^^^^^^^
    FileNotFoundError: [Errno 2] No such file or directory: './model.p'
    Could u help me out in fixing this error sir!!!!.

  • @travisfernandes5387
    @travisfernandes5387 8 месяцев назад

    how to make this project on web based like on react or flask

  • @mahmudsherbhai2325
    @mahmudsherbhai2325 Год назад

    hi I am a 15 year old and i want to do this for my school tech convention. What program are you using to code this

  • @michaenrangelgiraldo5428
    @michaenrangelgiraldo5428 Год назад

    Hello, thank u for tutorial, that was amazing but i have an error when y run the classifier:
    ValueError: X has 42 features, but RandomForestClassifier is expecting 84 features as input.
    how can i fix that error?

    • @uzairkabeer
      @uzairkabeer Год назад

      @michaenrangelgiraldo5428 Okay so, I'm assuming that you are getting this error when predicting for that I just put an if condition like:
      if (len(data_aux) != 84)
      And with in that if condition I predict the values. I myself don't know whats causing this error but my assumption is it has something to do with the both left and right hand landmarks (42+42=84). Nevertheless, this solves this issue hope it will help you too.

    • @alexday4949
      @alexday4949 Год назад

      Can you try this code:
      desired_length = 4200
      # Pad data_aux with zeros to achieve the desired length
      while len(data_aux) < desired_length:
      data_aux.extend([0.0, 0.0])
      # Truncate data_aux if it exceeds the desired length
      data_aux = data_aux[:desired_length]

    • @mohamedlhachimi2933
      @mohamedlhachimi2933 7 месяцев назад +1

      i think guys to solve this problem we had to tell the collect data script to save just frames where he could detect our hands else we will store bad models that will ends with this getting errors like "inhomogeneous shapes" , i actually try to solved this problem by not moving my hand when collecting data and making my model else you can try this code to check your images that are stored
      This script will only print the paths of the images that are deleted due to no hands being detected. It won't display any image windows.
      ##########################################"
      import os
      import cv2
      import mediapipe as mp
      def process_and_show(image_path, mp_drawing):
      mp_hands = mp.solutions.hands
      hands = mp_hands.Hands()

      # Read the image
      image = cv2.imread(image_path)
      image_rgb = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)

      # Detect hands and landmarks
      results = hands.process(image_rgb)

      if not results.multi_hand_landmarks:
      print(f"Deleted image: {image_path}")
      # Delete the image with no hands detected
      os.remove(image_path)
      # Path to your data folder containing subfolders
      data_folder = "data"
      mp_drawing = mp.solutions.drawing_utils
      mp_drawing_styles = mp.solutions.drawing_styles
      # Iterate through subfolders
      for folder_name in os.listdir(data_folder):
      folder_path = os.path.join(data_folder, folder_name)
      if os.path.isdir(folder_path):
      print(f"Checking images in folder: {folder_name}")
      # Iterate through images in the folder
      for filename in os.listdir(folder_path):
      if filename.endswith(".jpg") or filename.endswith(".png"):
      image_path = os.path.join(folder_path, filename)
      process_and_show(image_path, mp_drawing)

  • @abdallahsamir2707
    @abdallahsamir2707 Год назад +1

    Hello, I have watched your video and found it very informative. However, I was wondering what is the limitation of this project?

    • @ComputerVisionEngineer
      @ComputerVisionEngineer  Год назад +2

      Hey, limitation in terms of possible symbols? I would say any static symbol made with only one hand.

  • @minamyworld
    @minamyworld Месяц назад

    hello i need a quick response please with f= open('data.pickle', 'wb'):
    pickle.dump({'data': data, 'labels': labels}, f) i keep getting an error here ... this is it anyone knows what should I do please let me know
    {Expected type 'SupportsWrite[bytes]', got 'BinaryIO' instead }

  • @УльянаМедведева-б5и
    @УльянаМедведева-б5и 8 месяцев назад

    Hello everyone, please tell me, maybe someone knows why when you run the test you get this error: "ValueError: X has 84 features, but RandomForestClassifier is expecting 42 features as input". how can i fix this?
    Thanks in advance for the answer!

    • @fruitpnchsmuraiG
      @fruitpnchsmuraiG 8 месяцев назад

      hey did it work then?

    • @УльянаМедведева-б5и
      @УльянаМедведева-б5и 8 месяцев назад

      ​@@fruitpnchsmuraiG
      Yes, the program starts, detects the gesture, but after a minute it shuts down and gives the above error

    • @mohamedlhachimi2933
      @mohamedlhachimi2933 7 месяцев назад

      i think guys to solve this problem we had to tell the collect data script to save just frames where he could detect our hands else we will store bad models that will ends with this getting errors like "inhomogeneous shapes" , i actually try to solved this problem by not moving my hand when collecting data and making my model else you can try this code to check your images that are stored
      This script will only print the paths of the images that are deleted due to no hands being detected. It won't display any image windows.
      ##########################################"
      import os
      import cv2
      import mediapipe as mp
      def process_and_show(image_path, mp_drawing):
      mp_hands = mp.solutions.hands
      hands = mp_hands.Hands()

      # Read the image
      image = cv2.imread(image_path)
      image_rgb = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)

      # Detect hands and landmarks
      results = hands.process(image_rgb)

      if not results.multi_hand_landmarks:
      print(f"Deleted image: {image_path}")
      # Delete the image with no hands detected
      os.remove(image_path)
      # Path to your data folder containing subfolders
      data_folder = "data"
      mp_drawing = mp.solutions.drawing_utils
      mp_drawing_styles = mp.solutions.drawing_styles
      # Iterate through subfolders
      for folder_name in os.listdir(data_folder):
      folder_path = os.path.join(data_folder, folder_name)
      if os.path.isdir(folder_path):
      print(f"Checking images in folder: {folder_name}")
      # Iterate through images in the folder
      for filename in os.listdir(folder_path):
      if filename.endswith(".jpg") or filename.endswith(".png"):
      image_path = os.path.join(folder_path, filename)
      process_and_show(image_path, mp_drawing)

  • @tihbohsyednap8644
    @tihbohsyednap8644 Год назад +1

    Hello sir, Kindly solve this error for me ----> ValueError: With n_samples=1, test_size=0.2 and train_size=0.8, the resulting train set will be empty. Adjust any of the aforementioned parameters.

  • @darrellardhanihidayat555
    @darrellardhanihidayat555 Год назад +1

    Hi sir, i got some error at inference_classifier.py, the errors says:
    Line 36, in
    H, W, _= frame.shape
    AttributeError: ‘NoneType’ object has no attribute ‘shape’
    Thank you for the help🙏🏻

    • @RohanVector
      @RohanVector 11 месяцев назад

      It's fully working for you now?
      Because I cannot able to run the first step please help mee

    • @RohanVector
      @RohanVector 11 месяцев назад

      In collect_img is cv2.imshow(frame) is error bro kindly help me

    • @RohanVector
      @RohanVector 11 месяцев назад

      Error name :size.width>0 && size.height>0 in function 'cv::imshow'

    • @manasayjoseph1075
      @manasayjoseph1075 11 месяцев назад

      can you please show the err
      @@RohanVector

    • @saivaraprasadmandala8558
      @saivaraprasadmandala8558 11 месяцев назад

      Change the line to -> cap = cv2.VideoCapture(0)...
      Previously it was -> cap = cv2.VideoCapture(2)@@RohanVector

  • @STEVENARAYANA
    @STEVENARAYANA 2 месяца назад

    which software is used to execute this process

  • @rutujakothale3829
    @rutujakothale3829 8 месяцев назад

    i'm getting this error, please help
    Traceback (most recent call last):
    File "d:\sign lang\testing.py", line 27, in
    H, W, _ = frame.shape
    AttributeError: 'NoneType' object has no attribute 'shape'
    INFO: Created TensorFlow Lite XNNPACK delegate for CPU.

    • @rentaroiino1789
      @rentaroiino1789 6 месяцев назад

      were you able to find a solution to your problem?

  • @jainishshah2021
    @jainishshah2021 Год назад

    Can anyone help me out with the error, I am facing the error in the sign language detection tutorial in the train_classifier section
    data = np.asarray(data_dict['data'])
    TypeError: float() argument must be a string or a real number, not 'list'
    ValueError: setting an array element with a sequence.

    • @lal6797
      @lal6797 Год назад

      Did you solve this error??

    • @RohitSharma-mj9fz
      @RohitSharma-mj9fz Год назад

      @@lal6797 if you have solution please inform me

  • @martinsilungwe2725
    @martinsilungwe2725 Год назад

    I have just subscribed,
    Currently working on a similar project, fingers crossed I'm at a right place..😂

    • @ComputerVisionEngineer
      @ComputerVisionEngineer  Год назад

      🤞😀 Good luck with your project, Martin! 🙌

    • @martinsilungwe2725
      @martinsilungwe2725 Год назад

      @@ComputerVisionEngineer Sir i have an error "ValueError: The least populated class in y has only 1 member, which is too few. The minimum number of groups for any class cannot
      be less than 2.
      ", what can be the problem, im trying to classfy all the alphabet letters, your help will be highly appreciated.

    • @sakshi8806
      @sakshi8806 2 месяца назад

      ​@@martinsilungwe2725 do you have any solution for it now?

  • @litheshking3018
    @litheshking3018 2 месяца назад

    My problem is no such file or directory ; /data. Pickle

  • @abhikpanda1581
    @abhikpanda1581 10 месяцев назад

    The least populated class in y has only 1 member, which is too few. The minimum number of groups for any class cannot be less than 2. The above error is coming . Can anybody pls help me out?

  • @arptv4962
    @arptv4962 4 месяца назад

    Hello ! Thank you for the porject. Is anybody knows how to fix this error: H, W, _ = frame.shape AttributeError: 'NoneType' object has no attribute 'shape'. I have done all the steps before until the last program, however, it looks like it doesn't see images or something? have anybody had the same problem?

  • @Envyro1
    @Envyro1 Год назад

    when you crop the image to just show the sign does that mean anyone can sign the alphabet and it will show what sign they are doing?

    • @ComputerVisionEngineer
      @ComputerVisionEngineer  Год назад +1

      Once the model is trained, anyone can sign the alphabet and it will show what sign they are doing.

  • @Hw2anything
    @Hw2anything Год назад

    How will this accept video feed from a phone ?