## 4 Methodology
### Drone Path Planning  
To facilitate the inspection of the PFBs, the searching algorithm deployed, first discussed in our previous work [1], consists of a trained Haar-cascade classifier for PFB  
\begin{table}
\begin{tabular}{p{56.9 pt} p{56.9 pt} p{56.9 pt} p{56.9 pt} p{56.9 pt} p{56.9 pt}} \hline \hline
**Feature** & **DJI Tello EDU** & **Robolink CoDrone** & **Crazyflie 2.1** & **Airblock** & **Parrot ANAFI** \\ \hline
**Camera** & 720p & 720p & 720p & 720p & 4K HDR \\ \hline
**EIS** & \(\checkmark\) & \(\times\) & \(\times\) & \(\times\) & \(\checkmark\) \\ \hline
**VPS** & \(\checkmark\) & \(\times\) & \(\times\) & \(\times\) & \(\times\) \\ \hline
**Processor** & Intel 14-Core & Not Specified & STM32F405 & Not Specified & Ambarella SoC \\ \hline
**Programmable** & \(\checkmark\) & \(\checkmark\) & \(\checkmark\) & \(\checkmark\) & \(\checkmark\) \\ \hline
**Programming Language** & Python & Blockly, Python & Python, C & Scratch 3.0 & Python, Blockly \\ \hline
**Connectivity** & WiFi & Bluetooth, WiFi & Radio, Bluetooth & Bluetooth & WiFi \\ \hline
**User-friendly** & High & High & Moderate & High & High \\ \hline
**Cost (Approx. USD)** & \$140 & \$215 & \$225 & \$120 & \$700 \\ \hline
**Sensors** & IMU, Range Finder, Barometer & IMU, Optical Flow, Barometer, Ultrasonic & IMU, Range Finder & IMU, Ultrasonic Magnetometer \\ \hline \hline \end{tabular}  
\(\checkmark\) Indicates feature is present while \(\times\) indicates feature is not present.  
\end{table}
Table 1: Comparison of some programmable drones with user-friendly SDKs.  
identification. However, to allow for precise imagery to be captured of the blades, the metal protective casings were removed here, and thus, a new model was required for this task. Additionally, the same QR code system was used to allow seamless tracking of image save locations within the application and allow for drift adjustments. Finally, the auxiliary camera present on the Tello EDU was utilized along with OpenCV's Hough Circle transform to allow precise takeoff and landing on the designated helipad. These features of the experimental setup can be seen in Figure 1.  
Providing the software framework and backbone of the entire system, a computer running the Python scripts enables seamless integration of various components including sensor data, flight control, drone communication, and multi-threaded processing for deep learning algorithms. Figure 2 illustrates the comprehensive system architecture integrating the DJI Tello EDU drone with a local computer, essential for executing the multifaceted components of our educational experiments. In this figure, computer vision-based path planning showcases how the drone utilizes real-time image data for navigation, including object recognition and environmental mapping. Cartesian coordinate-based path planning details the method by which the drone's position is calculated in relation to a Cartesian grid, enabling precise movement based on the calculated coordinates. Trigonometric computations via object detection depict the integration of object detection with trigonometric calculations to determine the drone's path by calculating the distances and angles relative to the detected objects. Crack and anomaly detection via deep learning illustrates the process of analyzing captured images using deep learning models to detect structural anomalies or damages such as cracks on the simulated turbine PFBs.  
Figure 1: OpenCV’s Haar detection provides bounding boxes. The QR code is used for target verification and is read by the Python library ‘pyqroode’. OpenCV’s Hough transform function detects the helipad circle.