Cyril666 commited on
Commit
9c6d655
·
verified ·
1 Parent(s): ff04c23

Update processing_videollama3.py

Browse files
Files changed (1) hide show
  1. processing_videollama3.py +22 -18
processing_videollama3.py CHANGED
@@ -293,24 +293,28 @@ class Videollama3Qwen2Processor(ProcessorMixin):
293
  return num_tokens
294
 
295
  def load_images(self, image_path: Union[str, List[str], Image.Image, List[Image.Image]]):
296
- if isinstance(image_path, str) and os.path.isfile(image_path):
297
- # images = [cv2.cvtColor(cv2.imread(image_path), cv2.COLOR_BGR2RGB)]
298
- images = [Image.open(image_path).convert('RGB')]
299
- elif isinstance(image_path, str) and os.path.isdir(image_path):
300
- # images = [cv2.cvtColor(cv2.imread(os.path.join(image_path, f)), cv2.COLOR_BGR2RGB) for f in sorted(os.listdir(image_path))]
301
- images = [Image.open(os.path.join(image_path, f)).convert('RGB') for f in sorted(os.listdir(image_path))]
302
- elif isinstance(image_path, str) and image_path.startswith("http://") or image_path.startswith("https://"):
303
- images = [Image.open(requests.get(image, stream=True).raw)]
304
- elif isinstance(image_path, list) and isinstance(image_path[0], str):
305
- # images = [cv2.cvtColor(cv2.imread(f), cv2.COLOR_BGR2RGB) for f in image_path]
306
- images = [Image.open(f).convert('RGB') for f in image_path]
307
- elif isinstance(image_path, list) and isinstance(image_path[0], Image.Image):
308
- images = [np.array(x) for x in image_path]
309
- elif isinstance(image_path, Image.Image):
310
- images = [np.array(image_path)]
311
- else:
312
- raise ValueError(f"Unsupported image path type: {type(image_path)}")
313
- return images
 
 
 
 
314
 
315
  def load_video(
316
  self,
 
293
  return num_tokens
294
 
295
  def load_images(self, image_path: Union[str, List[str], Image.Image, List[Image.Image]]):
296
+ def load_single_image(image_path):
297
+ if isinstance(image_path, str) and os.path.isfile(image_path):
298
+ # images = [cv2.cvtColor(cv2.imread(image_path), cv2.COLOR_BGR2RGB)]
299
+ images = Image.open(image_path).convert('RGB')
300
+ elif isinstance(image_path, str) and image_path.startswith("http://") or image_path.startswith("https://"):
301
+ images = Image.open(requests.get(image_path, stream=True).raw)
302
+ elif isinstance(image_path, Image.Image):
303
+ images = np.array(image_path)
304
+ else:
305
+ raise ValueError(f"Unsupported image path type: {type(image_path)}")
306
+ return images
307
+
308
+ try:
309
+ if isinstance(image_path, list):
310
+ images = [load_single_image(f) for f in image_path]
311
+ elif isinstance(image_path, str) and os.path.isdir(image_path):
312
+ images = [Image.open(os.path.join(image_path, f)).convert('RGB') for f in sorted(os.listdir(image_path))]
313
+ else:
314
+ images = [load_single_image(image_path)]
315
+ return images
316
+ except:
317
+ raise ValueError(f"Error when loading images: {type(image_path)}")
318
 
319
  def load_video(
320
  self,