###前提・実現したいこと
二つの画像のサイズをそろえるプログラムを作成しています。現在書いているコードだとimg1がimg2より小さいときにエラーが出るので高さ(h)と幅(w)の比にいったん10をかけてintにしてからresizeのときに10を割りたいと思っています。
###発生している問題・エラーメッセージ
TypeError Traceback (most recent call last) <ipython-input-20-6e2fa382cc98> in <module>() 20 # 第二引数:変更後の幅 21 # 第三引数:変更後の高さ ---> 22 resized_img1 = cv2.resize(img1,(width*w/10, height*h/10)) 23 resized_img2 = cv2.resize(img2,(width*w/10, height*h/10)) 24 cv2.imshow("img1", resized_img1) TypeError: integer argument expected, got float
###該当のソースコード
import cv2 # 画像の読み込み img1 = cv2.imread("C:/Users/wakimoto/testimg/face.jpg", 1) img2 = cv2.imread("C:/Users/wakimoto/testimg/face2.jpg", 2) # 読み込んだ画像の高さと幅を取得 height = img1.shape[0] width = img1.shape[1] height2 = img2.shape[0] width2 = img2.shape[1] #img2がimg1より小さいと困るのでいったん10倍してint化したい h =float(height)/height2*10 print(h) w =float(width)/width2*10 print(w) # 画像のサイズを変更 # 第一引数:サイズを変更する画像 # 第二引数:変更後の幅 # 第三引数:変更後の高さ resized_img2 = cv2.resize(img2,(width*w/10, height*h/10)) cv2.imshow("img1", img1) cv2.imshow("img2", resized_img2) cv2.waitKey(0) cv2.destroyAllWindows()
###試したこと
課題に対してアプローチしたことを記載してください
###補足情報(言語/FW/ツール等のバージョンなど)
python2 opencv2.4
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/12/12 05:26
2017/12/12 05:32