初心者です。 python,opencv しきい値処理でmedianBlurができない
解決したいこと
pyhon,opencvを用いた適応的しきい値処理を行いたいのですが、その過程途中にあるmedianBlurでエラーが発生してしまいます。
読み込む画像(g_2.4flat09944.jpg)は、ガンマ補正を行い、さらに適用的ヒストグラム平坦化を行ったRGB画像なのですが、これが原因でしょうか?
ご教授いただけると幸いです。
宜しくお願い致します。
発生している問題・エラー
---------------------------------------------------------------------------
error Traceback (most recent call last)
<ipython-input-14-4e4153b65295> in <module>
4
5 img = cv2.imread("g_2.4flat09944.jpg")
----> 6 img = cv2.medianBlur(img,5)
7 plt.imshow(img)
error: OpenCV(4.4.0) C:\Users\appveyor\AppData\Local\Temp\1\pip-req-build-9d_dfo3_\opencv\modules\imgproc\src\median_blur.dispatch.cpp:283: error: (-215:Assertion failed) !_src0.empty() in function 'cv::medianBlur'
該当するソースコード
```import cv2
import numpy as np
from matplotlib import pyplot as plt
img = cv2.imread("g_2.4flat09944.jpg")
img = cv2.medianBlur(img,5)
plt.imshow(img)
### g_2.4flat09944.jpgに行ったガンマ補正と適用的ヒストグラム平坦化のコードものせておきます。 宜しくお願い致します。
import cv2
import sys
import numpy
import matplotlib.pyplot as plt
%matplotlib inline
plt.gray()
img = cv2.imread('DSC09944.jpg',0)
def create_gamma_img(gamma, img):
gamma_cvt = np.zeros((256,1), dtype=np.uint8)
for i in range(256):
gamma_cvt[i][0] = 255*(float(i)/255)**(1.0/gamma)
return cv2.LUT(img, gamma_cvt)
img_ganma = create_gamma_img(2.4,img)
plt.imshow(img_ganma)
clahe = cv2.createCLAHE(clipLimit=2.0, tileGridSize=(8,8))
cl1 = clahe.apply(img_ganma)
img_flat = cv2.imwrite("g_2.4flat09944.jpg",cl1)
1