opencv / opencv

Open Source Computer Vision Library
https://opencv.org
Apache License 2.0
75.69k stars 55.61k forks source link

Move Darknet importer and caffe importer in opencv_contrib #25462

Open LaurentBerger opened 1 week ago

LaurentBerger commented 1 week ago

Describe the feature and motivation

Why remove? I propose to Move Darknet importer and caffe importer in opencv_contrib (dnn_legacy?) instead to move in trash

Additional context

No response

dkurt commented 1 week ago

Interesting note, @LaurentBerger! I don’t see any blockers for such transition except the time consumed for testing on regular CI.

LaurentBerger commented 1 week ago

Then I can start the job but does opencv tteam really want it? About testing I think we can push all test. When all test are OK remove and add a message about code is frozen

dkurt commented 6 days ago

@vpisarev, need you comment.

As dnn builder is not very complicated (mostly just calls of addLayer + connect to build a network) the job on upgrade for different API should not be complicated (once it releases). What if we move Caffe, Darknet (not lua Torch) importers to opencv_contrib marking tests optional. Me and @LaurentBerger can manage the transition.

LaurentBerger commented 5 days ago

Now i Have git a dnnlegacy module some test failed but for my need I think there is no problem

[----------] Global test environment tear-down
[ SKIPSTAT ] 25 tests skipped
[ SKIPSTAT ] TAG='skip_other' skip 25 tests
[==========] 252 tests from 15 test cases ran. (30626 ms total)
[  PASSED  ] 209 tests.
[  FAILED  ] 43 tests, listed below:
[  FAILED  ] Test_Darknet.read_tiny_yolo_voc
[  FAILED  ] Test_Darknet.read_yolo_voc
[  FAILED  ] Test_Darknet.read_yolo_voc_stream
[  FAILED  ] Test_Caffe_nets.FasterRCNN_zf/2, where GetParam() = (5, 7)
[  FAILED  ] Reproducibility_MobileNet_SSD.Accuracy/2, where GetParam() = (5, 7)
[  FAILED  ] Test_Darknet_nets.YoloVoc/0, where GetParam() = (1000000, 0)
[  FAILED  ] Test_Darknet_nets.YoloVoc/1, where GetParam() = (5, 6)
[  FAILED  ] Test_Darknet_nets.YoloVoc/2, where GetParam() = (5, 7)
[  FAILED  ] Test_Darknet_nets.YoloVoc/3, where GetParam() = (3, 1)
[  FAILED  ] Test_Darknet_nets.YoloVoc/4, where GetParam() = (3, 2)
[  FAILED  ] Test_Darknet_nets.YoloVoc/5, where GetParam() = (3, 0)
[  FAILED  ] Test_Darknet_nets.TinyYoloVoc/0, where GetParam() = (1000000, 0)
[  FAILED  ] Test_Darknet_nets.TinyYoloVoc/1, where GetParam() = (5, 6)
[  FAILED  ] Test_Darknet_nets.TinyYoloVoc/2, where GetParam() = (5, 7)
[  FAILED  ] Test_Darknet_nets.TinyYoloVoc/3, where GetParam() = (3, 1)
[  FAILED  ] Test_Darknet_nets.TinyYoloVoc/4, where GetParam() = (3, 2)
[  FAILED  ] Test_Darknet_nets.TinyYoloVoc/5, where GetParam() = (3, 0)
[  FAILED  ] Test_Darknet_nets.YOLOv3/0, where GetParam() = (1000000, 0)
[  FAILED  ] Test_Darknet_nets.YOLOv3/1, where GetParam() = (5, 6)
[  FAILED  ] Test_Darknet_nets.YOLOv3/2, where GetParam() = (5, 7)
[  FAILED  ] Test_Darknet_nets.YOLOv3/3, where GetParam() = (3, 1)
[  FAILED  ] Test_Darknet_nets.YOLOv3/4, where GetParam() = (3, 2)
[  FAILED  ] Test_Darknet_nets.YOLOv3/5, where GetParam() = (3, 0)
[  FAILED  ] Test_Darknet_nets.YOLOv4/0, where GetParam() = (1000000, 0)
[  FAILED  ] Test_Darknet_nets.YOLOv4/1, where GetParam() = (5, 6)
[  FAILED  ] Test_Darknet_nets.YOLOv4/2, where GetParam() = (5, 7)
[  FAILED  ] Test_Darknet_nets.YOLOv4/3, where GetParam() = (3, 1)
[  FAILED  ] Test_Darknet_nets.YOLOv4/4, where GetParam() = (3, 2)
[  FAILED  ] Test_Darknet_nets.YOLOv4/5, where GetParam() = (3, 0)
[  FAILED  ] Test_Darknet_nets.YOLOv4_tiny/0, where GetParam() = (1000000, 0)
[  FAILED  ] Test_Darknet_nets.YOLOv4_tiny/1, where GetParam() = (5, 6)
[  FAILED  ] Test_Darknet_nets.YOLOv4_tiny/2, where GetParam() = (5, 7)
[  FAILED  ] Test_Darknet_nets.YOLOv4_tiny/3, where GetParam() = (3, 1)
[  FAILED  ] Test_Darknet_nets.YOLOv4_tiny/4, where GetParam() = (3, 2)
[  FAILED  ] Test_Darknet_nets.YOLOv4_tiny/5, where GetParam() = (3, 0)
[  FAILED  ] Test_Darknet_nets.YOLOv4x_mish/0, where GetParam() = (1000000, 0)
[  FAILED  ] Test_Darknet_nets.YOLOv4x_mish/1, where GetParam() = (5, 6)
[  FAILED  ] Test_Darknet_nets.YOLOv4x_mish/2, where GetParam() = (5, 7)
[  FAILED  ] Test_Darknet_nets.YOLOv4x_mish/3, where GetParam() = (3, 1)
[  FAILED  ] Test_Darknet_nets.YOLOv4x_mish/4, where GetParam() = (3, 2)
[  FAILED  ] Test_Darknet_nets.YOLOv4x_mish/5, where GetParam() = (3, 0)
[  FAILED  ] Test_Darknet_layers.region/0, where GetParam() = (1000000, 0)
[  FAILED  ] Test_Darknet_layers.maxpool/0, where GetParam() = (1000000, 0)
LaurentBerger commented 5 days ago

There is no problem to close this issue

LaurentBerger commented 4 days ago

https://github.com/opencv/opencv/pull/25323#discussion_r1582162992