title: Reading a grayscale image in python shows 3 color channels instead of one
body: <p>I am reading an image in python from a dataset which contains grayscale .png images.</p>
  <p>img_1.png is already a grayscale image.</p>
  <pre><code>img=cv2.imread('img_1.png')
  print(img.shape)
  </code></pre>
  <p>on reading the image, img.shape shows 3 channels.</p>
  <pre><code>(16, 16, 3)
  </code></pre>
  <p>However it is a grayscale image so it should have only width and height.</p>
  <pre><code>(16, 16)
  </code></pre>
  <p>I have also read the same grayscale image in MATLAB, it is only showing width and height.</p>
  <p>but reading an rgb image in python and converting it to the grayscale does not show 3 channels. why it is so?</p>
  <pre><code>gray_img=cv2.imread('rgb_1.png',cv2.IMREAD_GRAYSCALE)
  print(gray_img.shape)
  </code></pre>
  <p>output:</p>
  <pre><code>(1050, 1400)
  </code></pre>
  <p>Is the output of reading a grayscale image and an image converted to grayscale in python is same? what is the difference?</p>
  <p>i want to read that grayscale image without showing channels.</p>