Feature detection in imgproc is basically about geometric features, such as:
- edges
- corners
- lines
- circles
and is related to image processing (hence these functions are in imgproc
).
Feature detection in features2d is about local features and descriptors (such as ORB, AKAZE, MSER, ...), and is more related to computer vision and machine learning (classification) fields. You can use Harris corner (in imgproc
) as keypoints of local features, but that's not the only way to find keypoints (e.g. see MSER).
So, the name feature refers to different kind of features, and are so in different modules.