opencv / opencv

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

Doc: Suggest to remove C API links and blank pages for core/imgcodecs/... #25140

Closed Kumataro closed 2 weeks ago

Kumataro commented 2 months ago

Describe the doc issue

Basically, C API has been deprecated/excluded at OpenCV4. ( https://github.com/opencv/opencv/wiki/Opencv4 ) It seems that there are some C API links and these linked C API pages are blank. I suggests to remove them.

Some modules has been fixed at 5.x branch. What style of pull request is appropriate?

module 4.x branch 5.x branch
calib Needs
calib3d Needs
core Needs Needs
imgproc Needs
imgcodecs Needs Needs
highgui Needs
photo Needs Needs
video Needs Needs
videoio Needs Needs

Fix suggestion

I think we can remove these links and pages.

kmtr@kmtr-None:~/work/opencv$ git reset --hard
HEAD is now at 500c55a808 Merge pull request #25122 from unnonouno:pqueue
kmtr@kmtr-None:~/work/opencv$ git grep "C API" | grep "\@defgroup"
modules/calib3d/include/opencv2/calib3d.hpp:    @defgroup calib3d_c C API
modules/highgui/include/opencv2/highgui.hpp:    @defgroup highgui_c C API
modules/imgcodecs/include/opencv2/imgcodecs.hpp:    @defgroup imgcodecs_c C API
modules/imgproc/include/opencv2/imgproc.hpp:    @defgroup imgproc_c C API
modules/photo/include/opencv2/photo.hpp:    @defgroup photo_c C API
modules/video/include/opencv2/video.hpp:    @defgroup video_c C API
modules/videoio/include/opencv2/videoio.hpp:    @defgroup videoio_c C API for video I/O
kmtr@kmtr-None:~/work/opencv$ git grep "C structure" | grep "\@defgroup"
modules/core/include/opencv2/core.hpp:    @defgroup core_c C structures and operations
kmtr@kmtr-None:~/work/opencv5$ git reset --hard
HEAD is now at 1d1faaabef Merge pull request #24411 from alexlyulkov:al/dnn-type-inference
kmtr@kmtr-None:~/work/opencv5$ git grep "C API" | grep "\@defgroup"
modules/calib/include/opencv2/calib.hpp:    @defgroup calib3d_c C API
modules/imgcodecs/include/opencv2/imgcodecs.hpp:    @defgroup imgcodecs_c C API
modules/photo/include/opencv2/photo.hpp:    @defgroup photo_c C API
modules/video/include/opencv2/video.hpp:    @defgroup video_c C API
modules/videoio/include/opencv2/videoio.hpp:    @defgroup videoio_c C API for video I/O
kmtr@kmtr-None:~/work/opencv5$ git grep "C structure" | grep "\@defgroup"
modules/core/include/opencv2/core.hpp:    @defgroup core_c C structures and operations
mshabunin commented 2 months ago

@Kumataro , there is a PR which removes some of groups you mentioned: https://github.com/opencv/opencv/pull/25042/files#diff-3fe9ef1ff29a111bc7b5c61d62603ba3956f0969bc5df4781384e739341220f3

I think the best way to do it will be updating that PR with more changes, than waiting for it to be propagated to 5.x. And then we can finish leftovers in 5.x, e.g. calib.

Note: all legacy headers are excluded from the documentation by filename glob (*_c.h) https://github.com/opencv/opencv/blob/500c55a808ceaa2058e2d1c060c2269c40c0cc9a/doc/Doxyfile.in#L108

Kumataro commented 2 months ago

Thank you very much for your reply !

So I would like to create separate pull requests for patches for the calib3d module for 4.x and the calib module for 5.x.

Kumataro commented 2 weeks ago

This issue is completed, so I close it, thank you !