YOLOV5 本地摄像头打不开

YOLOV5打开本地摄像头报AttributeError: ‘Upsample’ object has no attribute 'recompute_scale_factor’错误

处理方式:

1、打开报错的这个目录文件upsampling.py

 

 

def forward(self, input: Tensor) -> Tensor:
        return F.interpolate(input, self.size, self.scale_factor, self.mode, self.align_corners,
                             recompute_scale_factor=self.recompute_scale_factor)

修改为:

def forward(self, input: Tensor) -> Tensor:
        return F.interpolate(input, self.size, self.scale_factor, self.mode, self.align_corners)

 

 

 处理完有台机器用可以用。但有另的机器不知道是不是摄头不一样又报以下错误:

TypeError: unsupported operand type(s) for *: 'NoneType' and 'int'

处理方法:

1、打开utils\dataset.py文件

修改以下代码

            if 'youtube.com/' in str(url) or 'youtu.be/' in str(url):  # if source is YouTube video
                check_requirements(('pafy', 'youtube_dl'))
                import pafy
                url = pafy.new(url).getbest(preftype="mp4").url
            cap = cv2.VideoCapture(url)

修改为:

cap = cv2.VideoCapture(0,cv2.CAP_DSHOW)

 

2、第二处:

将以下代码:

time.sleep(1 / self.fps)  # wait time

修改为:

if(self.fps !=0):time.sleep(1 / self.fps) # wait time

 

 

打开的设摄像头的方式 python detect.py  --source 0

打开后摄像头是黑色的

后面改成 python detect.py  --source http://xx//xx.mp4

就可以,不懂为什么后面要跟一个http链接

 

posted @ 2022-10-27 09:27  ziff123  阅读(417)  评论(0编辑  收藏  举报