前提・実現したいこと
画像を読み込み、ガンマ補正とコントラスト調整を行うプログラムなのですが、すでに動いていたプログラムからコピーして使ったにもかかわらず、エラーが出てしまい、原因が分からず困っています。
分かる方がいましたら、教えていただけますでしょうか。
発生している問題・エラーメッセージ
NameError Traceback (most recent call last) <ipython-input-3-45ad90bfe96a> in <module> 15 gamma_cvt[i][0] = 255*(float(i)/255)**(1.0/gamma) 16 return cv2.LUT(img, gamma_cvt) ---> 17 img_ganma = create_gamma_img(2.4,img) 18 19 equ = cv2.equalizeHist(img_ganma) <ipython-input-3-45ad90bfe96a> in create_gamma_img(gamma, img) 11 12 def create_gamma_img(gamma, img): ---> 13 gamma_cvt = np.zeros((256,1), dtype=np.uint8) 14 for i in range(256): 15 gamma_cvt[i][0] = 255*(float(i)/255)**(1.0/gamma) NameError: name 'np' is not defined
該当のソースコード
python
1import cv2 2import sys 3import numpy 4import matplotlib.pyplot as plt 5%matplotlib inline 6plt.gray() 7 8r = 1.6 9n = 9940 10img = cv2.imread("DSC0"+str(n)+".jpg",0) 11 12def create_gamma_img(gamma, img): 13 gamma_cvt = np.zeros((256,1), dtype=np.uint8) 14 for i in range(256): 15 gamma_cvt[i][0] = 255*(float(i)/255)**(1.0/gamma) 16 return cv2.LUT(img, gamma_cvt) 17img_ganma = create_gamma_img(2.4,img) 18 19equ = cv2.equalizeHist(img_ganma) 20 21img_flat = cv2.imwrite("g-"+str(r)+"contrast-cl-"+str(n)+".jpg",equ) 22 23 24
試したこと
すでに動いているプログラムをここに貼っておきます。
python
1import cv2 2import sys 3import numpy 4import matplotlib.pyplot as plt 5%matplotlib inline 6plt.gray() 7 8r = 2.4 9n = 9944 10img = cv2.imread("DSC0"+str(n)+".jpg",0) 11 12def create_gamma_img(gamma, img): 13 gamma_cvt = np.zeros((256,1), dtype=np.uint8) 14 for i in range(256): 15 gamma_cvt[i][0] = 255*(float(i)/255)**(1.0/gamma) 16 return cv2.LUT(img, gamma_cvt) 17img_ganma = create_gamma_img(2.4,img) 18 19clahe = cv2.createCLAHE(clipLimit=2.0, tileGridSize=(8,8)) 20cl1 = clahe.apply(img_ganma) 21 22cv2.imwrite("g-"+str(r)+"contrast-cl-"+str(n)+".jpg",cl1) 23 24 25
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/12/04 03:53