EMG Controlled Quadcopter Object Detection System
The 3D interaction of a machine with the target is one of the emerging technology, primarily used for the purpose of finding and aiming. For our final year project we designed an EMG controlled Quadcopter that has the capability to detet objects randomly. Again, that incorporates the branches o
2025-06-28 16:26:59 - Adil Khan
EMG Controlled Quadcopter Object Detection System
Project Area of Specialization Electrical/Electronic EngineeringProject SummaryThe 3D interaction of a machine with the target is one of the emerging technology, primarily used for the purpose of finding and aiming. For our final year project we designed an EMG controlled Quadcopter that has the capability to detet objects randomly. Again, that incorporates the branches of deep learning. Along with that the quadcopter control will be EMG based, whereas aerial object detection is our foremost goal.
Project ObjectivesThe main goal of this project is to build a system that works to provide services such as object detection efficiently, certainly minimizing human errors. The system is an amal- gamation of two technologies i.e. BCI and UAV object detection system. Firstly, we need to assemble a Quadcopter that ensures stability. To achieve that a Quadcopter is to be assembled and tested carefully, which functions to fly in a stable hover mode, slow forward flight (SFF) and fast forward flight (FFF). It is important for the aircraft to be able to have a transition between different flight modes i.e. hover mode and the forward flight mode, and after the forward flight it should come back to the hover mode and land safely and perfectly. Furthermore, after using remote control as a transmitter-receiver device, quadcopter is to be controlled by muscle signals using myoarmband. Lastly, object detection is carried out by applying suitable algorithms. To accomplish our goal, this system is segregated into six distinguished steps. Following are the steps that will shape the output.
- Firstly, data is acquired from the subject’s brain signals. Data acquisition is carried out using different techniques? we intend to use the Electromyography method of signal acquisition. The signal generated from muscle activity is sensed by the myoarmband and fed to the PC. The signal is then processed, modified, and amplified.
- After signal processing, the required features are extracted and classified. This is done by using a suitable feature set and a classifier of maximum accuracy. These classified EMG signals are transmitted to the PC.
- Signal acquisition, processing, extraction, and classification cover one part of BCI technology. The other half incorporates the dispatching of the signal to the con- trollers.
- Once the signal is sent out and fed to a controller, it is ready to control an output electronic device which is a Quadcopter in our scenario.
- Controllers are set to an optimum threshold to synchronize the Quadcopter control with hand gestures. After the quadcopter is controlled through electromyography signals, it is treated to store object detection algorithms of deep learning.
- Once the object detection algorithms are installed, EMG controlled quadcopters are made to perform object detection in respective area, which is done by detecting and recognizing the object.
Design Procedure:
Following are the steps that we followed to accomplish aims and objectives of our project:
- Firstly, we used MyoArm band to acquire raw EMG signals.
- After this we used Myo Mex library to get our signals. This library streamed the data from the Myo Arm band to MATLAB for processing.. As the signals were raw, there was a lot of noise in our signals, so those signals were filtered.
- After the filtration we acquired specific features from them for the classification of different hand gestures.
- After classification we had to perform Signal Segmentation.
- For signal processing, the signal is broken into different segments the length of which should not be too short or too long. The segment being too short can lead to biasness in feature estimation while the segment being too long can lead to failure in performing real-time operation.
- After this we performed feature extraction and got different features to feed into a classifier.
- There are different types of classifiers, we chose Support Vector Machine SVM as it gave us the most accuracy out of different classifiers.
- After classification we generated a Simulink model that enabled us to get our processes gesture signals as output through an Arduino.
- The Drone design procedure is explained earlier in design details.
- The gesture recognition is done using MATLAB and object detection is carried out using raspberry pi.
- For object detection we first get an image and it is divided into grid cells, each grid cell has a bounding box with its respective score. Here, cells predict class probabilities to determine class of each object. The predictions are made simultaneously using a single CNN and after that bounding boxes are compared eliminating odd boxes that do not meet characteristics of objects. Finally, the end result is unique boxes that fit objects precisely.
- In the same way hand gestures through an image are identified after training the model, hand orientation and position is compared and then the final decision is made regarding which hand gesture is being performed.
The number of ways application can be made useful, allowing the objectives to be flexible. Furthermore, this application can be expanded in many ways, as far as detecting non-stationary objects is concerned. It can also be molded in terms of control that is if one wants to move towards a remote control aerial device instead of EMG controlled, the system is not being kept rigid in this regard. As mentioned earlier, the pliability of this application can bring about usefulness in numerous areas of concern. Our task lies in object detection only but to move ahead towards image recognition and segmentation i.e. locating objects within a video or image, it can be made possible by making a further study on this very project. The way our future is shaping and evidently becoming dependent on object detection’s unique capabilities, it can be seen through its various normally occurring applications i.e. crowd counting, video surveillance, face detection, anomaly detection etc. The future of object detection is bright as it has removed humanly errors and saved time in a lot surprising way.
Besides that, aerial vehicle itself has various applications itself i.e. the deliveries, detection, military activities, will not be fumes hacking vehicles and trucks dependent, but rather they will be carried out by battery controlled drones. This will eliminate how much more modest road deliveries, and it will mean there will be less trucks out and about. Along these lines, as opposed to wiping out the contamination from air freight, drones will cut into the contamination brought about by trucks. This not only brings sustainability to the environment but also eases people lives by speeding up human activities.
Technical Details of Final DeliverableEMG signal is acquired using Myo Gesture Control Armband. The first step for data acquisition is to Install myomex (process shown in figure 4.3). MyoMex is a simplified m class code that enables users to stream data from myo arm- band. The EMG data streams at 200Hz.The next step is to build the MyoMex instance from Myo SDK. Myo SDK contains a library called libmyo that helps different appli- cations from various programming languages to interact with myo armband. This also allows us to inspect the MyoData objects. The objects we will use are timeEMG and emg which contains the number of samples stored in a given period of time and the value of EMG signals from the eight electrodes of myo armband. The MyoData obtained is stored in a variable. The program collects data for the given amount of time. After that the values of timeEMG and emg are saved in a different variable. The variable emg is a matrix that consists of eight columns and n rows where n is the number of samples taken for a given amount of time.
For signal processing, the signal is broken into different segments the length of which should not be too short or too long. The segment being too short can lead to biasness in feature estimation while the segment being too long can lead to failure in performing real-time operation.
Feature extraction is the process of converting a signal into a set of features that can be fed into a classifier. When compared to using the raw signal, classification is more efficient. Features we extracted are mean, variance, average amplitude change, rms, frequency median and mean.
Support Vector Machine is used as a classifier as it gave better accuracy.
AlexNet Algorithm is used for handgestures recognition via MATLAB.
YOLO is one of the most popular algorithms for object detection due to its speed and accuracy. It uses neural networks to provide real-time object detection. Initially the image is divided into grid cells, each grid cell has a bounding box with its respective score. Here, cells predict class probabilities to determine class of each object. For example, in the image below there exists at least three classes of objects: a car, a dog, and a bicycle. The predictions are made simultaneously using a single CNN. Now comes IOU into play, where bounding boxes are compared eliminating odd boxes that do not meet characteristics of objects. Finally, the end result is unique boxes that fit objects precisely. In the figure, car is surrounded by the pink bounding box, bicycle is surrounded by the yellow bounding box and dog is surrounded by blue bounding box.
Support Vector Machine(Signal Classification):

Gesture Recognition (using AlexNet Algorithm):


Object detection:

Hardware:


| Item Name | Type | No. of Units | Per Unit Cost (in Rs) | Total (in Rs) |
|---|---|---|---|---|
| Total in (Rs) | 69800 | |||
| APM 2.8 | Equipment | 1 | 7400 | 7400 |
| GPS+Stand M8N | Equipment | 1 | 4950 | 4950 |
| Motors – Emax RS2205 2300Kv | Equipment | 4 | 2450 | 9800 |
| Escs SKYWALKER 40A | Equipment | 4 | 2700 | 10800 |
| RC 8channel T8FB Radiolink | Equipment | 1 | 8500 | 8500 |
| Battery-4500mAh LIPO 3S 11.1V | Equipment | 1 | 6750 | 6750 |
| Props-3blade | Equipment | 4 | 500 | 2000 |
| Frame-DJI’s F450 | Equipment | 1 | 2300 | 2300 |
| XT90 battery connectors | Miscellaneous | 1 | 300 | 300 |
| Raspberry pi | Equipment | 1 | 17000 | 17000 |