I want to start with image processing (image classification). I installed opencv and plan to use it with Python. Being starter at this, I am looking for references regarding trivial issues like: I just saved some images and want to get their pixel values as features , hoewever when I try loading it in opencv, I am getting differently shaped 3-dimmensional objects. Some references or suggestion regarding this issue will be highly appreciated.
2 Answers
Your numpy arrays are 3-dimensional because they are colored images. The first dimension is the y-dimension, the second dimension is your x-dimension and the third dimension is the different color channels. What order they are in depends on your reader, but I think OpenCV uses BGR (check the documentation here). A lot of the feature extraction methods only work on grayscale arrays which are mapped back to two dimensions, any of the well known image packages can do this for you (OpenCV, scikit-image).
Adding to the answer given by @Jan van der Vegt, I would recommend you to go through the basics of gray scale imaging and of color palettes and how those are represented in matrices in python or in general. Simultaneously work on python scipy to see how images are being represented. Going through some basics like resizing, histograms etc. in theory will be very helpful for a better understanding and representation of imaging before you put yourself into coding something.