DRAPEa / utils /batch_processor.py
andevs's picture
Upload 18 files
9c1053c verified
Raw
History Blame Contribute Delete
916 Bytes
import time
from concurrent.futures import ThreadPoolExecutor
class BatchProcessor:
def __init__(self):
self.max_workers = 4
def process(self, images: list) -> dict:
start_time = time.time()
results = []
for img in images:
result = self._process_single(img)
results.append(result)
processing_time = (time.time() - start_time) * 1000
avg_confidence = sum(r.get('confidence', 0) for r in results) / len(results) if results else 0
return {
"total": len(results),
"items": results,
"avg_confidence": avg_confidence,
"processing_time": processing_time
}
def _process_single(self, image: np.ndarray) -> dict:
return {
"id": id(image),
"type": "clothing",
"confidence": 0.85
}