pythonでこのようなプログラムを行ったところ
Python
1# -*- coding: utf-8 -*- 2import cv2 3import numpy as np 4 5th = 100 6 7# 背景, 入力画像の取得 8im_bg = cv2.imread('kyousitu2.jpeg') 9im_in = cv2.imread('kyousitu1.jpeg') 10 # 差分計算 11diff = cv2.absdiff(im_in,im_bg) 12 # 差分が閾値より小さければTrue 13mask = diff < th 14 # 配列(画像)の高さ・幅 15hight = im_bg.shape[0] 16width = im_bg.shape[1] 17#resize_img = cv2.resize(img_dst,(hight/2,width/2)) 18 19 # 背景画像と同じサイズの配列生成 20im_mask = np.zeros((hight,width),np.uint8) 21 # Trueの部分(背景)は白塗り 22im_mask[mask] = 255 23 # ゴマ塩ノイズ除去 24im_mask = cv2.medianBlur(im_mask,blur) 25 # エッジ検出 26im_edge = cv2.Canny(im_mask,100,200) 27 28cv2.imshow("detected2.jpg", im_mask) 29
下記のエラーが発生しました。これはどうしたらいいのでしょうか?
Traceback (most recent call last): File "sabun7.py", line 22, in <module> im_mask[mask] = 255 IndexError: too many indices for array
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。