MakerGram Logo

    MakerGram

    • Register
    • Login
    • Search
    • Categories
    • Recent
    • Popular
    • Tags
    • Users
    • Groups

    [Solved] Help needed for face detection -deep learning

    General Discussion
    4
    16
    1745
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • A
      arunksoman last edited by

      Follow These steps

      1. Create a virtual enviroment and activate virtial environment
      python -m venv venv
      

      Activate venv for windows using following command:

      .\venv\Scripts\activate
      

      For Ubuntu:

      source venv/bin/activate
      
      1. Install necessary packages on venv
      pip install opencv-python
      
      pip install imutils
      
      1. Create Folder structure as shown below in your workspace
      TestPrograms  
      |
      ├─ cascades
      │  └─ haarcascade_frontalface_default.xml
      ├─ detect_faces.py
      ├─ images
      │  └─ obama.jpg
      ├─ utilities
      │  └─ facedetector.py
      
      
      1. Program for utililities/facedetector.py given below:
      import cv2
      class FaceDetector:
          def __init__(self, face_cascade_path):
              # Load the face detector
              self.face_cascade = cv2.CascadeClassifier(face_cascade_path)
      
          def detect(self, image, scale_factor=1.2, min_neighbors=3):
              # Detect faces in the image
              boxes = self.face_cascade.detectMultiScale(image, scale_factor, min_neighbors, flags=cv2.CASCADE_SCALE_IMAGE, minSize=(30,30))
      
              # Return the bounding boxes
              return boxes
      
      1. program on detect_faces.py
      from utilities.facedetector import FaceDetector
      import imutils
      import cv2
      
      # Define paths
      image_path = 'images/obama.jpg'
      cascade_path = 'cascades/haarcascade_frontalface_default.xml'
      
      # Load the image and convert it to greyscale
      image = cv2.imread(image_path)
      image = imutils.resize(image, 600, 600)
      gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
      
      # Find faces in the image
      detector = FaceDetector(cascade_path)
      face_boxes = detector.detect(gray, 1.2, 5)
      print("{} face(s) found".format(len(face_boxes)))
      
      # Loop over the faces and draw a rectangle around each
      for (x, y, w, h) in face_boxes:
          cv2.rectangle(image, (x, y), (x + w, y + h), (0, 255, 0), 2)
      
      # Show the detected faces
      cv2.imshow("Faces", image)
      if(cv2.waitKey(0)):
       cv2.destroyAllWindows()
      
      1. Links to necessary files:
        Haar cascade frontal face
        Obama Family Image
      Nandu 1 Reply Last reply Reply Quote 2
      • Nandu
        Nandu @arunksoman last edited by

        @arunksoman thankyou 🥳

        A 1 Reply Last reply Reply Quote 0
        • A
          arunksoman @Nandu last edited by

          @Nandu But I have to mention that it is not a deep learning method. It is based on Integral images(Viola-Jones algorithm), which is basically something about ML. From opencv 3.4.3 there is a DNN module. This module help us to load caffemodels, torch models as well as tensorflow models. You can find out caffemodels on the Internet in order to detect faces. Using those we can make face detection quite efficiently. If you have any doubt feel free to ask here.

          Nandu 1 Reply Last reply Reply Quote 2
          • Nandu
            Nandu @arunksoman last edited by

            @arunksoman how this code helps me to count faces if deeplearning isn't used.

            A 1 Reply Last reply Reply Quote 0
            • A
              arunksoman @Nandu last edited by arunksoman

              @Nandu Please read the comment given above carefully and search how the viola-jones algorithm works. Sorry for misunderstanding what you say. That is why edited comment.

              1 Reply Last reply Reply Quote 0
              • salmanfaris
                salmanfaris last edited by

                @Nandu Did you complete? excited to see.

                Nandu 1 Reply Last reply Reply Quote 0
                • Nandu
                  Nandu @salmanfaris last edited by salmanfaris

                  @salmanfaris in the below terminal count shows.some steps i have followed in a different manner.Thank you for helping me!🙂

                  IMG-20200314-WA0032.jpg

                  A 1 Reply Last reply Reply Quote 1
                  • salmanfaris
                    salmanfaris last edited by

                    Happy to know that 😊 , thanks to @arunksoman 🤝 , Happy Making 💥

                    1 Reply Last reply Reply Quote 0
                    • A
                      arunksoman @Nandu last edited by

                      @Nandu You are still confusing me because your title saying you have to count faces, your picture shows, counting of cars🤔. Actually what are you trying to make?

                      Nandu 1 Reply Last reply Reply Quote 0
                      • Nandu
                        Nandu @arunksoman last edited by

                        @arunksoman yes.In my project ,subject is car.So if i get some idea regarding counting faces then i could modify it.In my project i don't want to copy anyone's code,for getting some idea i have asked you.

                        A 1 Reply Last reply Reply Quote 0
                        • First post
                          Last post

                        Recent Posts

                        • D

                          Signal Hunt: An ESP-NOW Workshop & Treasure Hunt

                          Hello everyone! We’re planning on organizing a two-phase event that explores device-to-device communication using ESP-NOW protocol :

                          Workshop: Participants learn to build and program ESP32-based receivers with a web interface that directly exchange signal data using ESP-NOW for RSSI-based distance approximation.

                          Signal Hunt Competition: Equipped with these receivers, participants will track hidden ESP32 transmitters scattered around the campus, each with distinct point values.

                          Current hardware setup:
                          Reciever(one per team):
                          Esp32 ~ 360rs
                          9v battery = 20rs
                          9v battery clip= 5rs
                          buck converter (MP1584 or LM2596) ~ 45rs
                          Perfboard + male to female berg strip ~30rs
                          Total per reciever ~ 460rs
                          Transmitters :6
                          Components same as recievers = 460*6~2760rs

                          (using non-rechargeable batteries to reduce cost,
                          will using a 7805 voltage regulator IC be a viable way to reduce cost further?)

                          We’d love your suggestions on ways to simplify hardware, reducing the cost, secure partnerships and funding, or enhance the interactive elements. Thank you, looking forward to any ideas that can help make the event engaging and successful!

                          • read more
                        • M

                          RTA offers a diverse range of stylish apparel, including rta clothing staples like rta hoodie men, men's rta hoodie, and the sleek black rta hoodie. Their denim collection features must-haves such as rta denim pants, rta denim mens, rta denim jeans, rta skinny jeans, rta jeans mens, rta jeans, and rta denim shorts. Complete your look with rta shorts, rta shirts, rta t shirt, rta t shirt men, and cozy options like the rta sweatshirt. For a functional touch, add rta cargo pants to your wardrobe and create the ultimate rta outfit for any occasion.

                          • read more
                        • J

                          So today, I was reading about a kid who got a custom prosthetic arm printed like really. Holly molly! People are printing prosthetics nowadays! That’s when I stumbled upon Curewith3D, and wow, 3D printing in healthcare is on another level.

                          Apparently, I found out that they’re not just 3d printing limbs. They actually use patient-specific scans (like CT/MRI data) and some DICOM files to design prosthetics that fit the person’s body perfectly. Every angle, curve, and dimension is matched to the individual. No more bulky or uncomfortable fits.

                          What’s wild is how fast and affordable the process is. Instead of traditional molds and weeks of waiting, Curewith3D can design, print, and deliver a customized prosthetic in a fraction of the time.

                          I didn’t know 3D printing services could be this life-changing, and it's happening right here in India. It really makes you wonder what else we’re going to be printing next.

                          Anyone else heard of this or know someone who’s used a 3D printed prosthetic? Would love to hear more.

                          • read more
                        • R

                          I am trying to set up a janus webrtc to stream an RTSP to an HTML page.
                          I have followed the getting-started steps by Janus-gateway official github repo.

                          Since I am new to web development. I do not understand how to host the Webrtc server. can anyone guide me to set up an HTML page that can display a video stream from an RTSP server using janus webrtc?

                          • read more
                        • @zainmuhammed Can try capturing the GPS when the device is starting the loop instead after joining the LoRaWAN and see?

                          You can put the GPS value on top of the loop or setup function.

                          Also, what kind of gateway are you using? Is it configured okay, OTA is done?

                          • read more
                        By MakerGram | A XiStart Initiative | Built with ♥ NodeBB
                        Copyright © 2023 MakerGram, All rights reserved.
                        Privacy Policy | Terms & Conditions | Disclaimer | Code of Conduct