Megvii-BaseDetection / Megvii-BaseDetection/YOLOX
Evaluation on Windows fails due to missing ninja (use standard COCOeval)
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 10.6k
- Forks
- 2.5k
- PR merge metrics
- No merged PRs in 30d
Description
On Windows, the evaluation step tries to import the optimized Cython version (COCOeval_opt), which in turn requires a working ninja install for JIT compilation. If ninja isn’t available, the import fails and the entire eval pipeline breaks.
🔧 Temporary Workaround
Force use of the pure-Python evaluator by swapping out the import. In
yolox/evaluators/coco_evaluator.py (around line 294):
https://github.com/Megvii-BaseDetection/YOLOX/blob/d872c71bf63e1906ef7b7bb5a9d7a529c7a59e6a/yolox/evaluators/coco_evaluator.py#L294
, replace:
- from yolox.evaluators.coco_opt import COCOeval_opt
+ from pycocotools.cocoeval import COCOeval
This change bypasses the ninja dependency and lets evaluation complete using the standard COCO API.
Feel free to let me know if you’d like a PR implementing the fallback logic!
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start in yolox/evaluators/coco_evaluator.py around line 294 and inspect the COCOeval_opt import and evaluation path. Run the evaluation flow on Windows without ninja, then verify that it completes through the standard pycocotools COCO evaluator without requiring ninja.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- computer-vision
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 58/100