开源挑战:用旧手机造机器人眼睛

用报废手机给机器人装上"眼睛"!

📌 材料:闲置安卓机×1 + 电脑×1

💡 原理:手机变网络摄像头 + OpenCV颜色追踪

🌱 环保价值:让电子垃圾重获新生,减少0.5kg碳排放

附录:robot_eye.py 完整代码(直接复制使用)

python 复制代码
#!/usr/bin/env python3
"""
🤖 机器人之眼 | 开源再造计划
✨ 用旧手机+OpenCV实现视觉追踪
🌍 环保提示:本项目让电子垃圾重获新生,减少碳排放
🔗 代码开源协议:MIT License
"""
import cv2
import numpy as np
import sys

def main(stream_url):
    cap = cv2.VideoCapture(stream_url)
    if not cap.isOpened():
        print("❌ 无法连接手机摄像头!请检查:")
        print("1. 手机与电脑是否在同一Wi-Fi")
        print("2. IP Webcam是否已启动")
        return
    
    cv2.namedWindow('🤖 机器人之眼 | 开源再造计划', cv2.WINDOW_NORMAL)
    print("✅ 启动成功!将红色物体移至镜头前...")
    
    while True:
        ret, frame = cap.read()
        if not ret:
            break
        
        # 转HSV空间检测红色(含两种红色范围)
        hsv = cv2.cvtColor(frame, cv2.COLOR_BGR2HSV)
        lower_red1 = np.array([0, 100, 100])
        upper_red1 = np.array([10, 255, 255])
        lower_red2 = np.array([160, 100, 100])
        upper_red2 = np.array([180, 255, 255])
        mask = cv2.inRange(hsv, lower_red1, upper_red1) + cv2.inRange(hsv, lower_red2, upper_red2)
        
        # 轮廓追踪
        contours, _ = cv2.findContours(mask, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
        if contours:
            largest = max(contours, key=cv2.contourArea)
            if cv2.contourArea(largest) > 500:
                x, y, w, h = cv2.boundingRect(largest)
                cv2.rectangle(frame, (x, y), (x+w, y+h), (0, 255, 0), 3)
                cv2.putText(frame, "TARGET LOCKED!", (x, y-10), 
                           cv2.FONT_HERSHEY_SIMPLEX, 0.7, (0, 255, 0), 2)
        
        cv2.imshow('🤖 机器人之眼 | 开源再造计划', frame)
        if cv2.waitKey(1) & 0xFF == ord('q'):
            break
    
    cap.release()
    cv2.destroyAllWindows()

if __name__ == "__main__":
    if len(sys.argv) != 2:
        print("用法: python3 robot_eye.py <手机视频流URL>")
        print("示例: python3 robot_eye.py http://192.168.1.100:8080/video")
        sys.exit(1)
    main(sys.argv[1])

#开源新春集福 #地瓜机器人 #OpenLoong开源社区 #AtomGit

相关推荐
GitCode官方14 天前
开源鸿蒙跨平台直播|napigen 开源鸿蒙跨端实践:打通 Flutter 与 ArkTS
人工智能·鸿蒙pc·atomgit
GitCode官方15 天前
玩转 AtomCode!AtomGit「码动四季・开源同行」夏季征稿获奖名单出炉!
人工智能·atomgit
GitCode官方16 天前
本周 G-Star 开源项目推荐
开源·g-star·atomgit
GitCode官方17 天前
小鸿 AI 语音案例正式上线海思案例中心!首个适配 OpenHarmony 7.0 Release 全栈开源 AI 硬件
人工智能·开源·atomgit
GitCode官方17 天前
AtomGit 8 月:应用市场 App 上线、首页与工作台双改版、14 组织 32 项目加入 G-Star、五城 Meetup 收官
开源·atomgit
M-Robots echo1 个月前
轻量化裁剪方案解析:M-Robots 模块化构建,适配高低端各类机器人硬件平台
java·机器人·ros·开源社区·atomgit·m-robots
GitCode官方1 个月前
AtomGit 首发:PhyAI 具身智能推理引擎开源入驻
开源·具身智能·atomgit
特立独行的猫a2 个月前
小鸿 AI新玩法:面向 AI Agent 的通用语音交互硬件技术方案
人工智能·atomgit·小鸿ai·贾维斯
GitCode官方2 个月前
openPangu-2.0-Pro 模型及技术报告正式开源上线 AtomGit AI
人工智能·华为·开源·harmonyos·atomgit
GitCode官方2 个月前
开源鸿蒙跨平台直播| 快手KRN鸿蒙适配与性能优化
华为·开源·harmonyos·atomgit