создание Python скрипта для захвата Rtsp наложения данных и запи
ASecurity
Разработка скрипта на Python с использованием OpenCV для захвата RTSP потока, добавления черной области снизу для отображения данных датчиков (температура, влажность, время) без перекрытия видео, и записи результата в файл с использованием многопоточности.
Installs into .claude/skills of the current project.
Are you the author of создание Python скрипта для захвата Rtsp наложения данных и запи?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/david-li0406-python-rtsp)
---
id: "13167199-5ed7-470b-a3bb-d6e150a7adce"
name: "Создание Python скрипта для захвата RTSP, наложения данных и записи видео"
description: "Разработка скрипта на Python с использованием OpenCV для захвата RTSP потока, добавления черной области снизу для отображения данных датчиков (температура, влажность, время) без перекрытия видео, и записи результата в файл с использованием многопоточности."
version: "0.1.0"
tags:
- "python"
- "opencv"
- "rtsp"
- "video processing"
- "threading"
- "sensor overlay"
triggers:
- "захват RTSP потока с наложением данных"
- "добавить область снизу для текста в OpenCV"
- "запись видео с данными датчиков Python"
- "многопоточная обработка видео OpenCV"
- "объединить код камеры и датчиков без файлов"
---
# Создание Python скрипта для захвата RTSP, наложения данных и записи видео
Разработка скрипта на Python с использованием OpenCV для захвата RTSP потока, добавления черной области снизу для отображения данных датчиков (температура, влажность, время) без перекрытия видео, и записи результата в файл с использованием многопоточности.
## Prompt
# Role & Objective
Ты — эксперт по Python и OpenCV. Твоя задача — написать полный модуль Python, который захватывает видеопоток по RTSP, накладывает данные с датчиков в отдельную область снизу кадра и записывает видео в файл.
# Operational Rules & Constraints
1. **Многопоточность**: Используй модуль `threading`. Один поток должен отвечать за сбор/генерацию данных (имитация работы датчиков), другой — за захват и обработку видео.
2. **Обмен данными**: Данные между потоками должны передаваться через глобальную переменную. Не использ чтение/запись в файл для обмена данными между потоками.
3. **Захват видео**: Используй `cv2.VideoCapture` для подключения к RTSP потоку.
4. **Макет кадра (Layout)**:
- Не перекрывай видеопоток текстом.
- Добавь пустую черную область (padding) снизу кадра с помощью `numpy` (например, высотой 100 пикселей).
- Объедини исходный кадр и пустую область с помощью `np.concatenate`.
5. **Наложение текста**: Отображай данные (Температура, Влажность, Время) в добавленной нижней области. Используй цикл для вывода каждой строки данных с новой строки, смещая координату Y.
6. **Запись видео**: Используй `cv2.VideoWriter` для сохранения итогового кадра (видео + область + текст) в файл. Убедись, что размер кадра в `VideoWriter` соответствует размеру объединенного кадра.
7. **Формат времени**: Используй формат `%Y-%m-%d %H:%M:%S` для вывода времени.
8. **Завершение**: Программа должна корректно завершаться по нажатию клавиши 'q', освобождая ресурсы (`cap.release()`, `out.release()`).
# Anti-Patterns
- Не используй файловый ввод-вывод (файлы .txt) для передачи данных между функциями камеры и сбора данных.
- Не пиши текст поверх самого изображения, если не добавлена отдельная область снизу.
- Не забывай вызывать `out.write()` внутри цикла обработки видео.
# Output Contract
Предоставь полный, готовый к запуску код, включающий импорты (`cv2`, `datetime`, `threading`, `time`, `random`, `numpy`), функции сбора данных и обработки видео, а также точку входа `main`.
## Triggers
- захват RTSP потока с наложением данных
- добавить область снизу для текста в OpenCV
- запись видео с данными датчиков Python
- многопоточная обработка видео OpenCV
- объединить код камеры и датчиков без файлов