使用手机做PC机摄像头

准备工作:

  1. 带摄像头的安卓手机一部
  2. 模拟相机软件:Iriun 、DroidCam 、IP摄像头
  3. python+opencv

一、Iriun

1、分别在PC和手机上安装

2、手机和PC在同一个局域网

3、分别打开PC和手机端软件,电脑端就可以使用手机相机

二、 DroidCam

1、安装软件

2、打开软件

3、手机和PC在同一个局域网

4、python 打开手机相机

python 复制代码
import cv2

url = "http://192.168.1.20:4747/video"
cap = cv2.VideoCapture(url)

while(cap.isOpened()):
    # Capture frame-by-frame
    ret, frame = cap.read()
    # Display the resulting frame
    cv2.imshow('frame',frame)

    if cv2.waitKey(1) & 0xFF == ord('q'):
        break
# When everything done, release the capture
cap.release()
cv2.destroyAllWindows()

三、IP摄像头

通过局域网

python 复制代码
import cv2

url = "http://192.168.1.20:8081/video"
cap = cv2.VideoCapture(url)

while(cap.isOpened()):
    # Capture frame-by-frame
    ret, frame = cap.read()
    # Display the resulting frame
    cv2.imshow('frame',frame)

    if cv2.waitKey(1) & 0xFF == ord('q'):
        break
# When everything done, release the capture
cap.release()
cv2.destroyAllWindows()

通过RTSP 人脸识别

python 复制代码
import cv2

# 加载人脸检测器模型
face_cascade = cv2.CascadeClassifier(cv2.data.haarcascades + 'haarcascade_frontalface_default.xml')
url = 'rtsp://:@192.168.1.19:8554/live'
# 创建一个VideoCapture对象,用于读取视频流
cap = cv2.VideoCapture(url)



# 循环读取视频帧并进行人脸检测
while True:
    # 读取视频帧
    ret, frame = cap.read()

    # 将视频帧转换为灰度图像
    gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)

    # 检测人脸
    faces = face_cascade.detectMultiScale(gray, 1.3, 5)

    # 在视频帧中标记人脸
    for (x, y, w, h) in faces:
        cv2.rectangle(frame, (x, y), (x+w, y+h), (255, 0, 0), 2)

    # 在窗口中显示视频帧
    cv2.imshow("IP Camera - Face Detection", frame)

    # 按下'q'键退出循环
    if cv2.waitKey(1) & 0xFF == ord('q'):
        break

# 释放VideoCapture对象和窗口
cap.release()
cv2.destroyAllWindows()
相关推荐
吴秋霖19 分钟前
【某音电商】protobuf聊天协议逆向
python·算法·protobuf
深藏功yu名20 分钟前
Day24:向量数据库 Chroma_FAISS 入门
数据库·人工智能·python·ai·agent·faiss·chroma
cm6543201 小时前
用Python破解简单的替换密码
jvm·数据库·python
wan9yu1 小时前
为什么你需要给 LLM 的数据"加密"而不是"脱敏"?我写了一个开源工具
python
摇滚侠1 小时前
你是一名 java 程序员,总结定义数组的方式
java·开发语言·python
这个名有人用不2 小时前
解决 uv 虚拟环境使用 pip 命令提示command not found的办法
python·pip·uv·claude code
Oueii2 小时前
掌握Python魔法方法(Magic Methods)
jvm·数据库·python
2501_908329852 小时前
使用Python自动收发邮件
jvm·数据库·python
2501_908329853 小时前
NumPy入门:高性能科学计算的基础
jvm·数据库·python