title: ÐÑÐ¾Ð³ÑÐ°Ð¼Ð¼Ð½ÑÐ¹ Ð¿ÑÐ¾Ð´ÑÐºÑ Ð¿Ð¾Ð¸ÑÐºÐ° Ð¾Ð±ÑÐµÐºÑÐ° Ð½Ð° Ð¸Ð·Ð¾Ð±ÑÐ°Ð¶ÐµÐ½Ð¸Ð¸ Ñ Ð²Ð¸Ð´ÐµÐ¾Ð¿Ð¾ÑÐ¾ÐºÐ° Ð¸ ÑÐ°ÑÑÑÑ ÐµÐ³Ð¾ Ð¾ÑÑÑÐ¾ÑÐ½Ð¸Ñ Ð¾Ñ ÐºÐ°Ð¼ÐµÑÑ
title: Ð²ÑÐ¿ÑÑÐºÐ½Ð°Ñ ÐºÐ²Ð°Ð»Ð¸ÑÐ¸ÐºÐ°ÑÐ¸Ð¾Ð½Ð½Ð°Ñ ÑÐ°Ð±Ð¾ÑÐ° Ð¼Ð°Ð³Ð¸ÑÑÑÐ°
titleType: Subtitle
title: A software product for searching for an object in an image from a video stream and calculating its distance from the camera
Creators: name: Ð¨ÐºÑÑÐ°ÑÐ¾Ð², ÐÐ¸ÐºÐ¾Ð»Ð°Ð¹
Publisher: name: Ð¡Ð°Ð½ÐºÑ-ÐÐµÑÐµÑÐ±ÑÑÐ³ÑÐºÐ¸Ð¹ Ð¿Ð¾Ð»Ð¸ÑÐµÑÐ½Ð¸ÑÐµÑÐºÐ¸Ð¹ ÑÐ½Ð¸Ð²ÐµÑÑÐ¸ÑÐµÑ ÐÐµÑÑÐ° ÐÐµÐ»Ð¸ÐºÐ¾Ð³Ð¾
Year: 2024
Subjects: Ð¿Ð¾Ð¸ÑÐº Ð¾Ð±ÑÐµÐºÑÐ° Ð½Ð° Ð¸Ð·Ð¾Ð±ÑÐ°Ð¶ÐµÐ½Ð¸Ð¸
Ð²Ð¸Ð´ÐµÐ¾Ð¿Ð¾ÑÐ¾Ðº
Ð¾ÑÑÑÐ¾ÑÐ½Ð¸Ðµ Ð¾Ñ ÐºÐ°Ð¼ÐµÑÑ
Ð¿ÑÐ¾Ð³ÑÐ°Ð¼Ð¼Ð½ÑÐ¹ Ð¿ÑÐ¾Ð´ÑÐºÑ
ÑÐ¿ÐµÑÐ¸ÑÐ¸ÐºÐ°ÑÐ¸Ñ
Ð°Ð»Ð³Ð¾ÑÐ¸ÑÐ¼
Ð°ÑÑ Ð¸ÑÐµÐºÑÑÑÐ°
ÑÑÐµÐ´Ð° ÑÐ°Ð·ÑÐ°Ð±Ð¾ÑÐºÐ¸
Ð¸Ð½ÑÑÑÑÐ¼ÐµÐ½ÑÐ°ÑÐ¸Ð¹
search for an object in an image
video stream
distance from the camera
software product
specification
algorithm
architecture
development environment
tools

description: ÐÐ°Ð½Ð½Ð°Ñ ÑÐ°Ð±Ð¾ÑÐ° Ð¿Ð¾ÑÐ²ÑÑÐµÐ½Ð° ÑÐ°Ð·ÑÐ°Ð±Ð¾ÑÐºÐµ Ð¸ ÑÐ¾Ð¿ÑÐ¾Ð²Ð¾Ð¶Ð´ÐµÐ½Ð¸Ñ ÐºÐ°ÑÐµÑÑÐ²ÐµÐ½Ð½Ð¾Ð³Ð¾ Ð¿ÑÐ¾Ð³ÑÐ°Ð¼Ð¼Ð½Ð¾Ð³Ð¾ Ð¿ÑÐ¾Ð´ÑÐºÑÐ° ÑÐ¿Ð¾ÑÐ¾Ð±Ð½Ð¾Ð³Ð¾ Ð½Ð°ÑÐ¾Ð´Ð¸ÑÑ Ð¾Ð±ÑÐµÐºÑÑ Ð½Ð° Ð¸Ð·Ð¾Ð±ÑÐ°Ð¶ÐµÐ½Ð¸Ð¸ Ñ Ð²Ð¸Ð´ÐµÐ¾Ð¿Ð¾ÑÐ¾ÐºÐ° Ð¸ ÑÐ°ÑÑÑÑ ÐµÐ³Ð¾ Ð¾ÑÑÑÐ¾ÑÐ½Ð¸Ñ Ð¾Ñ ÐºÐ°Ð¼ÐµÑÑ. Ð ÑÐ¾Ð´Ðµ ÑÐ°Ð±Ð¾ÑÑ Ð±ÑÐ»Ð¸ ÑÐ°ÑÑÐ¼Ð¾ÑÑÐµÐ½Ñ Ð¸Ð½ÑÑÑÑÐ¼ÐµÐ½ÑÑ ÑÐ°Ð·ÑÐ°Ð±Ð¾ÑÐºÐ¸, ÑÐ°Ð·Ð²ÑÑÑÑÐ²Ð°Ð½Ð¸Ñ Ð¸ ÑÐ¾Ð¿ÑÐ¾Ð²Ð¾Ð¶Ð´ÐµÐ½Ð¸Ñ. Ð Ð°Ð·ÑÐ°Ð±Ð¾ÑÐ°Ð½Ñ Ð¸ Ð¿ÑÐ¾Ð¹Ð´ÐµÐ½Ñ ÑÐµÑÑÑ. ÐÐ»Ñ ÑÐ°ÑÑÑÑÐ° Ð¾ÑÑÑÐ¾ÑÐ½Ð¸Ñ Ð±ÑÐ» Ð²ÑÐ±ÑÐ°Ð½ Ð¼ÐµÑÐ¾Ð´ c Ð¸ÑÐ¿Ð¾Ð»ÑÐ·Ð¾Ð²Ð°Ð½Ð¸ÐµÐ¼ ÑÑÐµÑÐµÐ¾Ð·ÑÐµÐ½Ð¸Ñ. Ð ÑÐ¾Ð´Ðµ ÑÐ°Ð±Ð¾ÑÑ Ð±ÑÐ»Ð¸ Ð²ÑÐ±ÑÐ°Ð½Ñ: â¢ ÐÐ½ÑÑÑÑÐ¼ÐµÐ½ÑÑ ÑÐ°Ð·ÑÐ°Ð±Ð¾ÑÐºÐ¸: Ð¯Ð·ÑÐº Ð¿ÑÐ¾Ð³ÑÐ°Ð¼Ð¼Ð¸ÑÐ¾Ð²Ð°Ð½Ð¸Ñ: C++ (Ð¤ÑÐµÐ¹Ð¼Ð²Ð¾ÑÐº Qt), ÐÐ°Ð·Ð° Ð´Ð°Ð½Ð½ÑÑ: SQLite, Ð¡ÑÐµÐ´Ð° ÑÐ°Ð·ÑÐ°Ð±Ð¾ÑÐºÐ¸: Qt Creater, Ð¡ÑÐ°ÑÐ¸ÑÐµÑÐºÐ¸Ð¹ Ð°Ð½Ð°Ð»Ð¸Ð·Ð°ÑÐ¾Ñ: cppcheckgui, Ð¤ÑÐµÐ¹Ð¼Ð²Ð¾ÑÐº Ð´Ð»Ñ ÑÐ°Ð±Ð¾ÑÑ Ñ Ð¸Ð·Ð¾Ð±ÑÐ°Ð¶ÐµÐ½Ð¸ÐµÐ¼: OpenCV, Ð¢ÐµÑÑÐ¸ÑÐ¾Ð²Ð°Ð½Ð¸Ðµ: QTest, ÐÐ¸Ð½Ð°Ð¼Ð¸ÑÐµÑÐºÐ¸Ð¹ Ð°Ð½Ð°Ð»Ð¸Ð· Ð¿ÑÐ¾Ð¸Ð·Ð²Ð¾Ð´Ð¸ÑÐµÐ»ÑÐ½Ð¾ÑÑÐ¸: Valgrind. â¢ ÐÐ½ÑÑÑÑÐ¼ÐµÐ½ÑÑ ÑÐ°Ð·Ð²ÑÑÑÑÐ²Ð°Ð½Ð¸Ñ: Ð¡Ð¸ÑÑÐµÐ¼Ð° ÐºÐ¾Ð½ÑÐµÐ¹Ð½ÐµÑÐ¸Ð·Ð°ÑÐ¸Ð¸: Docker, Kubernetes, CI/CD ÑÐ¸ÑÑÐµÐ¼Ð°: Github Actions. â¢ ÐÐ½ÑÑÑÑÐ¼ÐµÐ½ÑÑ ÑÐ¾Ð¿ÑÐ¾Ð²Ð¾Ð¶Ð´ÐµÐ½Ð¸Ñ: Ð¡Ð¸ÑÑÐµÐ¼Ð° Ð¼Ð¾Ð½Ð¸ÑÐ¾ÑÐ¸Ð½Ð³Ð°: Grafana, Graphite. ÐÐ»Ñ Ð´ÐµÐ¼Ð¾Ð½ÑÑÑÐ°ÑÐ¸Ð¸ ÑÐ°Ð±Ð¾ÑÑ Ð¿ÑÐ¾Ð´ÑÐºÑÐ° Ð¸ ÑÐµÑÑÐ¸ÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð¿ÑÐ¾Ð¸Ð·Ð²Ð¾Ð´Ð¸ÑÐµÐ»ÑÐ½Ð¾ÑÑÐ¸ ÑÐµÐ°Ð»Ð¸Ð·Ð¾Ð²Ð°Ð½Ð¾ Ð¿ÑÐ¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ðµ Ð¿Ð¾ Ð¿Ð¾Ð¸ÑÐºÑ Ð¾Ð±ÑÐµÐºÑÐ° Ð½Ð° Ð¸Ð·Ð¾Ð±ÑÐ°Ð¶ÐµÐ½Ð¸Ð¸ Ñ Ð²Ð¸Ð´ÐµÐ¾Ð¿Ð¾ÑÐ¾ÐºÐ° Ð¸ ÑÐ°ÑÑÑÑ ÐµÐ³Ð¾ Ð¾ÑÑÑÐ¾ÑÐ½Ð¸Ñ Ð¾Ñ ÐºÐ°Ð¼ÐµÑÑ. Ð ÐµÐ°Ð»Ð¸Ð·Ð¾Ð²Ð°Ð½Ð½ÑÐ¹ Ð¿ÑÐ¾Ð´ÑÐºÑ Ð¿ÑÐ¾Ð²ÐµÑÑÐ»ÑÑ Ð² Ð¶Ð¸Ð²ÑÑ Ð½Ð° Ð¿ÑÐµÐ´Ð¼ÐµÑ ÑÐ¾ÑÐ½Ð¾ÑÑÐ¸ Ð¾Ð±Ð½Ð°ÑÑÐ¶ÐµÐ½Ð¸Ñ Ð¾Ð±ÑÐµÐºÑÐ¾Ð² Ð¸ ÑÐ°ÑÑÑÑÐ° Ð¾ÑÑÑÐ¾ÑÐ½Ð¸Ñ.
description: This work is devoted to the development and maintenance of a high-quality software product capable of finding objects in an image from a video stream and calculating its distance from the camera. In the course of the work, development, deployment and maintenance tools were considered. Tests have been developed and passed. To calculate the distance, a method using stereo vision was chosen. During the work, the following were selected: â¢ Development tools: Programming language: C++ (Qt Framework), Database: SQLite, Development Environment: Qt Creator, Static Analyzer: cppcheckgui, Image framework: OpenCV, Testing: qTest, Dynamic Performance analysis: Valgrind. â¢ Deployment Tools: Containerization system: Docker, Kubernetes, CI/CD system: Github Actions. â¢ Maintenance tools: Monitoring system: Grafana, Graphite. To demonstrate the products operation and performance testing, an application has been implemented to search for an object in an image from a video stream and calculate its distance from the camera. The implemented product was checked live for the accuracy of object detection and condition calculation.