グーグルドライブから画像を読み込んで加工するプログラムを書いたいたところ、特定の画像でエラーが発生しました。ほかの画像だと問題なく加工できたのですが、この画像で実行すると下記のエラーが発生してしまいます。どうやら読み込み、テンソル化までは問題なく行っているようです。
使用言語はpythonで、実行環境はgoogle colaboratoryです。
テンソルフローのバージョンは2.0.0です。

どのようにすればこのエラーは解消しますか。

※当方このサイトにあまり慣れていないため、質問方法や記載方法がおかしかったら是非指摘していただけると助かります。


エラーメッセージ

InvalidArgumentError                      Traceback (most recent call last)
<ipython-input-111-242afefc9006> in <module>()
  1 pre_data = tf.image.resize(pre_data,[500,500])
----> 2 pre_data = tf.image.rgb_to_grayscale(pre_data)
  3 pre_data = np.asarray(pre_data)
  4 pre_data = np.squeeze(pre_data)
  5 pre_data.shape
 ------------------------------->>4 frames<<----------------------------------
/usr/local/lib/python3.6/dist-packages/six.py in raise_from(value, from_value)

InvalidArgumentError: Matrix size-incompatible: In[0]: [250000,4], In[1]: [3,1] [Op:MatMul] name: rgb_to_grayscale/Tensordot/MatMul/

問題コード

print()などは省略しています。また、本来のColaboratory上のプログラムではセルに分かれているところを詰めて書いています(上手な書き方があれば教えて下さい)

import tensorflow as tf
import numpy as np

path = "/content/drive/My Drive/for_MikuChecker"

img = np.asarray(Image.open(path + "/run_check/yes/48911351_p0.png"))
img = tf.convert_to_tensor(img)          # TensorShape([992, 622, 4])
size= h if h<w else w                    # w,h = (622, 992)
pre_data = tf.image.crop_to_bounding_box(img,int((h-size)/2),int((w-size)/2),size,size)
pre_data = tf.image.resize(pre_data,[500,500])
pre_data = tf.image.rgb_to_grayscale(pre_data)
pre_data = np.asarray(pre_data)
pre_data = np.squeeze(pre_data)
pre_data.shape

エラー発生場所

pre_data = tf.image.rgb_to_grayscale(pre_data)

使用した画像
エラーが発生した画像

この画像の転載元(本家様)