zhiqwang/yolort

Reduce dependencies for inferencing only

Opened this issue ยท 0 comments

๐Ÿš€ The feature

In version 0.5.x we have full support for YOLOv5, at the cost of introducing more dependencies. If someone just wants to use the models for inference, he/she doesn't need all additional features like:

  • #355
  • profiling
  • type conversions to pandas

However, those useful features are (partially) built-in to the model architecture. Therefore he/she needs to install additional libraries like

  • matplotlib
  • seaborn
  • pandas

even if he/she doesn't use them at all. Also downloading the additional font (Arial.ttf) can be a problem in restricted environments.

I think it would be nice to have an operable core model that runs with only a subset of required dependencies.

Motivation, pitch

I'd suggest to disentangle the core model (inference only) and the additional features (plotting, profiling, ...).

Alternatives

Leave it as it is and require all dependencies

Additional context

Originally posted by @maxstrobel in ultralytics/yolov5#4664 (comment)