# Key Considerations for Real-Time Object Recognition on Edge Computing Devices
## 4 Case Study: Real-Time Power Line Inspection
\begin{table}
\begin{tabular}{c c c c c c c c c} \hline \hline \multirow{2}{*}{**Method**} & **Edge** & **Quantization** & **Edge** & **mAP** & **Inference** & **RAM** & **Power Con-** & **Scaled-** \\  & **Devices** & **Mode** & **Framework** & & **Time** & **Utilization** & **sumption** & **EADS** \\ \hline \multirow{8}{*}{YOLOv7} & Rasp. Pi 4B & FP 32 & OpenVINO & 0.959 & 16.40 & 3119 & 4590 & 0.000 \\ \cline{2-8}  & \multirow{2}{*}{J. Nano} & \multirow{2}{*}{FP 16} & PyTorch & 0.966 & 1.24 & 6676 & 5540 & 0.005 \\ \cline{2-8}  & & & TensorRT & 0.962 & 0.33 & 5672 & 7290 & 0.019 \\ \cline{2-8}  & \multirow{2}{*}{J. Orin Nano} & \multirow{2}{*}{FP 16} & PyTorch & 0.966 & 0.08 & 6775 & 5712 & 0.086 \\ \cline{2-8}  & & & Tensor RT & 0.962 & 0.03 & 4866 & 8043 & 0.227 \\ \cline{2-8}  & & INT 8 & TensorRT & 0.943 & 0.02 & 4767 & 7402 & 0.346 \\ \hline \multirow{8}{*}{YOLOv7-Tiny} & Rasp. Pi 4B & FP 32 & OpenVINO & 0.956 & 2.74 & 1104 & 4210 & 0.006 \\ \cline{2-8}  & \multirow{2}{*}{J. Nano} & \multirow{2}{*}{FP16} & PyTorch & 0.953 & 0.23 & 5961 & 4205 & 0.036 \\ \cline{1-1} \cline{3-8}  & & & TensorRT & 0.949 & 0.06 & 5228 & 5393 & 0.130 \\ \cline{1-1} \cline{3-8}  & & & PyTorch & 0.953 & 0.03 & 6511 & 5096 & 0.243 \\ \cline{1-1} \cline{3-8}  & \multirow{2}{*}{J. Orin Nano} & \multirow{2}{*}{FP16} & TensorRT & 0.949 & 0.01 & 4780 & 6591 & 0.742 \\ \cline{1-1} \cline{3-8}  & & INT8 & TensorRT & 0.936 & 0.008 & 4693 & 5464 & 1.000 \\ \hline \hline \end{tabular}
\end{table} 
Table 13: Evaluation results. multiply-accumulate operation during network inference. Inspired by these works, we propose the edge-AI deployment score (EADS) (denoted by \(E(\mathcal{N})\)) metric, which asses the performance of edge AI deployment by considering the edge implementation accuracy (mAP), inference time, RAM utilization, and power consumption. The proposed EADS can be defined as follows:  
\[E(\mathcal{N})=\frac{a(\mathcal{N})^{\alpha}}{t(\mathcal{N})^{\beta}u( \mathcal{N})^{\gamma}p(\mathcal{N})^{\delta}} \tag{1}\]  
\[E_{scaled}(\mathcal{N})=\frac{E(\mathcal{N})-E_{min}(\mathcal{N})}{E_{max}( \mathcal{N})-E_{min}(\mathcal{N})} \tag{2}\]  
where \(a(\mathcal{N})\) is the accuracy of the network, \(t(\mathcal{N})\) is the inference time, \(u(\mathcal{N})\) is edge resource utilization (e.g., RAM, CPU), and \(p(\mathcal{N})\) is power consumption. On the other hand, \(\alpha,\ \beta,\ \gamma,\ \delta\) are coefficients that control the influences of accuracy, inference time, resource utilization, and power consumption, respectively. Finaly, \(E_{scaled}(\mathcal{N})\) is the scaled-value of EADS that ensures the final results are scaled from 0 to 1. Table 13 shows the EADS results. Quantized YOLOv7-Tiny (INT8) implementation on Jetson Orin Nano shows the best score, 1.000, due to acceptable accuracy result and outstanding inference time results, while YOLO-v7 (FP-32) implementation shows the lowest score, 0.000, due to the very large value of inference time. Although the implementation on Jetson Orin Nano achieves the lowest inference time, the cost the device is, however, much more expensive than Jetson Nano and Raspberry Pi. Therefore, further optimization of Raspberry Pi and Jetson Nano is required to achieve the best solution for object recognition on edge computing devices at a lower cost.