.. _menu: Главное меню ============ Главное меню включает в себя разделы: - Файл - Источники - Настройка - Справка Рассмотрим каждый раздел подробнее .. _file: Файл ---- Раздел "Файл" состоит из команд "сохранить как..." и "открыть...". Первая команда позволяет сохранить настройки зон в виде файла с расширением mv, вторая команда позволяет открыть этот файл. Эти команды также доступны с помощью сочетания клавиш ctrl+s и ctrl+o соответственно Источники --------- Этот раздел позволяет выбрать источник для обработки кадров/изображения программой Камеры ~~~~~~ Показывает все доступные на момент включения программы веб-камеры и IP-камеры. Ссылки на IP-камеры пользователь может прописать в файле input/ip_cameras.txt относительно :ref:`catalog`. Список камер не обновляется автоматически, чтобы его обновить предусмотрена команда "Обновить" .. note:: Если в процессе работы программы была подключена новая веб-камера, она не появится в меню, пока не будет выполнена команда "Обновить" Список IP-камер отображается независимо от того, доступны они или нет. Если выбранная камера окажется недоступна, она просто не будет работать. Убедитесь, что вы правильно указываете ссылку на IP-камеру по rstp протоколу. Конкретный вид ссылки устанавливается производителем IP-камер. Например, ссылка может иметь такой вид: rtsp://admin:12345@192.168.200.11:554/Streaming/Channels/101 .. _examples: Примеры ~~~~~~~ Позволяет загрузить зашитые в программу примеры для быстрой демонстрации возможностей программы Выбрать фото ~~~~~~~~~~~~ Позволяет загрузить для обработки фото по выбору Выбрать видео ~~~~~~~~~~~~~ Позволяет загрузить для обработки видео по выбору .. _settings: Настройки --------- .. _tesseract: Подключить нейросеть... ~~~~~~~~~~~~~~~~~~~~~~~ Для распознавания с помощью метода "нейросеть" необходимо указать путь до исполняемого файла Tesseract-OCR. - Для Windows: это файл `tesseract.exe` - Для Linux и macOS: это файл `tesseract` Предварительно установите программу Tesseract-OCR .. note:: Tesseract — это движок оптического распознавания символов (OCR) с открытым исходным кодом, является самой популярной и качественной OCR-библиотекой. OCR использует нейронные сети для поиска и распознавания текста на изображениях. Язык ~~~~ Вы можете выбрать любой язык интерфейса программы из предложенных. После выбора нужного языка необходимо перезагрузить программу. Для этого нажмите "да" в появившемся диалоговом окне после выбора языка. Если по каким либо причинам программа не перезапустилась, сделайте это вручную. Включать камеру при запуске программы ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Данная опция определяет, будет ли камера автоматически запускаться и становиться «источником» при старте программы. Вне зависимости от выбранного значения, при запуске программа всегда выполняет проверку всех доступных камер. Разрешение камеры ~~~~~~~~~~~~~~~~~ Выберете необходимое разрешение камеры .. note:: Возможность выбрать то или иное разрешение камеры зависит не от программы, а от самой камеры. Не всякое разрешение можно установить для каждой камеры. Сообщение о том, удалось ли выставить нужное разрешение, смотрите в :ref:`log` .. _res: Результаты распознавания ~~~~~~~~~~~~~~~~~~~~~~~~ Команда "наносить результаты на изображение" включает/выключает режим нанесения результатов распознавания на изображение. "Запись результатов в текстовые файлы" включает/выключает режим постоянной записи результатов в текстовые файлы, хранящиеся в папке output в :ref:`catalog`. Для каждой зоны формируется отдельный файл с названием номера зона, также формируется файл results.txt, в который записываются все результаты распознавания. "Передавать результаты по socket" включает/выключает режим передаче данных во внешние программы по socket. Когда этот режим включен, программа в постоянном режиме ожидает подключения по socket от сторонних программ. Пример реализации подключения с помощью внешней программы на языке python: .. code-block:: python import socket def start_client(host='localhost', port=65432): client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) try: client_socket.connect((host, port)) print(f"Подключено к серверу {host}:{port}") except ConnectionRefusedError as e: print(e) return try: # Получаем данные от сервера data = client_socket.recv(1024) # Максимум 1024 байта за раз print("Получено:", data.decode('utf-8')) # Данные имеют вид {1: '24.10', 2: 'AC', 3: 'AUTO'} except KeyboardInterrupt: print('Соединение прервано') finally: client_socket.close() if __name__ == "__main__": start_client() .. note:: Данный пример также можно найти в файле examples/socket_example.py относительно директории, в которой была установлена программа. Сохранить настройки ~~~~~~~~~~~~~~~~~~~ Данная команда сохраняет текущие настройки из главного меню для следующих запусков программы. Вернуть настройки по умолчанию ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Данная команда устанавливает настройки из главного меню по умолчанию Справка ------- Позволяет проверить версию программы и открыть документацию.