Unverified 提交 9dd33fd2 authored 作者: Glenn Jocher's avatar Glenn Jocher 提交者: GitHub

AutoShape PosixPath support (#4047)

* AutoShape PosixPath support Usage example: ````python from pathlib import Path model = ... file = Path('data/images/zidane.jpg') results = model(file) ``` * Update common.py
上级 dd62e2d0
# YOLOv5 common modules
from copy import copy
from pathlib import Path
from pathlib import Path, PosixPath
import math
import numpy as np
......@@ -232,8 +232,8 @@ class AutoShape(nn.Module):
@torch.no_grad()
def forward(self, imgs, size=640, augment=False, profile=False):
# Inference from various sources. For height=640, width=1280, RGB images example inputs are:
# filename: imgs = 'data/images/zidane.jpg'
# URI: = 'https://github.com/ultralytics/yolov5/releases/download/v1.0/zidane.jpg'
# filename: imgs = 'data/images/zidane.jpg' # str or PosixPath
# URI: = 'https://ultralytics.com/images/zidane.jpg'
# OpenCV: = cv2.imread('image.jpg')[:,:,::-1] # HWC BGR to RGB x(640,1280,3)
# PIL: = Image.open('image.jpg') # HWC x(640,1280,3)
# numpy: = np.zeros((640,1280,3)) # HWC
......@@ -251,8 +251,8 @@ class AutoShape(nn.Module):
shape0, shape1, files = [], [], [] # image and inference shapes, filenames
for i, im in enumerate(imgs):
f = f'image{i}' # filename
if isinstance(im, str): # filename or uri
im, f = Image.open(requests.get(im, stream=True).raw if im.startswith('http') else im), im
if isinstance(im, (str, PosixPath)): # filename or uri
im, f = Image.open(requests.get(im, stream=True).raw if str(im).startswith('http') else im), im
im = np.asarray(exif_transpose(im))
elif isinstance(im, Image.Image): # PIL Image
im, f = np.asarray(exif_transpose(im)), getattr(im, 'filename', f) or f
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论