Choosing a model size

Bigger models see more; smaller ones run faster. Every fotonet size takes the same input and returns the same output, so switching is one word in your code.

4 min read

The four sizes

ModelParametersCompute at 640Good for
fotonetn2.85M6.95 GFLOPsLive video, laptops, edge boxes
fotonets11.49M27.43 GFLOPsMost projects: the balance point
fotonetm22.23M63.38 GFLOPsMore detail when a few extra milliseconds are fine
fotonetl70.32M161.51 GFLOPsServers and offline jobs

fotonetn is available now, at 32.1 AP on COCO. The other sizes are in the package and their weights are coming.

How to choose

  • Know your budget first. How many frames per second, on which device? A webcam feed at 30 fps leaves about 33 ms per frame for everything.
  • Start with nano. On an RTX 4060, fotonetn goes from image to boxes in 7.5 ms. If it finds what you need, you are done.
  • Move up when accuracy is the bottleneck, not before. Measure mAP on your own validation images, not on COCO; your data decides.

Switching is one word

model = Fotonet("fotonetn")   # try "fotonets", "fotonetm" or "fotonetl" later

Training, export and every result object work the same for all sizes.