以下のサイトのように画像にグリッド線を引きたいと思っていますが、コードの意味が分からないところがあるので質問させていただきます。
「https://tat-pytone.hatenablog.com/entry/2019/03/28/233413」
コードです。
python
1import cv2 #OpenCVのインポート 2 3fname = "fish.jpg" #画像ファイル名 4 5y_step=20 #高さ方向のグリッド間隔(単位はピクセル) 6x_step=40 #幅方向のグリッド間隔(単位はピクセル) 7 8img = cv2.imread(fname) #画像を読み出しオブジェクトimgに代入 9 10#オブジェクトimgのshapeメソッドの1つ目の戻り値(画像の高さ)をimg_yに、2つ目の戻り値(画像の幅)をimg_xに 11img_y,img_x=img.shape[:2] 12 13#横線を引く:y_stepからimg_yの手前までy_stepおきに白い(BGRすべて255)横線を引く 14img[y_step:img_y:y_step, :, :] = 255 #??? 15#縦線を引く:x_stepからimg_xの手前までx_stepおきに白い(BGRすべて255)縦線を引く 16img[:, x_step:img_x:x_step, :] = 255 #??? 17 18cv2.imwrite('grid.png',img) #ファイル名'grid.png'でimgを保存
img[y_step:img_y:y_step, :, :] の意味が分かりません。Listのスライスを用いていることはわかります。
ご教授お願い致します。
回答2件
あなたの回答
tips
プレビュー