I am a freshman college student currently learning C++ programming. I am good at math and physics, so I am looking to specialize in 2D/3D graphics with OpenGL. My question is about the differences between OpenGL and OpenCV, and the amount of overlap these areas have. From what I have read, one creates graphics while the other processes them. I have many books on 3D graphics and the mathematics associated with it. What I am wondering is if the same concepts I am learning in OpenGL could be applied to OpenCV. Is it possible to become a C++ software engineer that could specialize in both OpenGL AND OpenCV, or is this an unrealistic goal?
I ask these questions because I understand that 2D/3D graphics programming requires a tremendous amount of knowledge in math and physics, but I don't know too much about OpenCV and the prerequisite skills necessary to "get my foot in the door".