Подключите камеру телефона Android к OpenCV - Python
Предварительные требования : OpenCV
OpenCV - это огромная библиотека с открытым исходным кодом для компьютерного зрения, машинного обучения и обработки изображений. OpenCV поддерживает широкий спектр языков программирования, таких как Python, C ++, Java и т. Д. Он может обрабатывать изображения и видео для идентификации объектов, лиц или даже почерка человека.
Часто использование компьютерного зрения или обработки изображений с помощью веб-камеры нашего ПК не является лучшим вариантом. Возможно, мы хотим улучшить качество нашей веб-камеры или создать приложения для обработки изображений, которые будут использовать камеру Android в качестве носителя.
В этой статье для этого используется Windows. Но основы кода будут такими же и в других операционных системах.
Подход
- Загрузите и установите приложение IP Webcam на свой мобильный телефон.
- Затем убедитесь, что ваш компьютер и телефон подключены к одной сети. Откройте приложение IP-веб-камеры на обоих, нажмите «Запустить сервер» (обычно находится внизу). Это откроет камеру на вашем телефоне.
- URL-адрес отображается на экране телефона, введите тот же URL-адрес в браузере вашего ПК и в разделе «Средство визуализации видео» щелкните «Javascript».
- Вы можете просматривать видео, снятое на ваш телефон, которое начинает отображаться в вашем браузере. Теперь мы собираемся взять данные изображения из URL-адреса с помощью модуля запроса и преобразовать их в кадр изображения с помощью NumPy и, наконец, начать использовать нашу камеру Android в качестве веб-камеры в Python.
- В коде:
- Модуль импорта
- Добавить URL-адрес, отображаемый в вашем телефоне
- Непрерывная выборка данных из URL
- Продолжайте отображать эти собранные данные
- Закрытое окно
Программа:
Python3
# Import essential libraries requests import import cv2 import numpy as np import imutils # Replace the below URL with your own. Make sure to add "/shot.jpg" at last. # While loop to continuously fetching data from the Url while True : img_resp = requests.get(url) img_arr = np.array(bytearray(img_resp.content), dtype = np.uint8) img = cv2.imdecode(img_arr, - 1 ) img = imutils.resize(img, width = 1000 , height = 1800 ) cv2.imshow( "Android_cam" , img) # Press Esc key to exit if cv2.waitKey( 1 ) = = 27 : break cv2.destroyAllWindows() |
Выход:
Внимание компьютерщик! Укрепите свои основы с помощью базового курса программирования Python и изучите основы.
Для начала подготовьтесь к собеседованию. Расширьте свои концепции структур данных с помощью курса Python DS. А чтобы начать свое путешествие по машинному обучению, присоединяйтесь к курсу Машинное обучение - базовый уровень.