画像のコンボリューション処理は、テンプレートのコンボリューション(畳み込みカーネル)が大きすぎると、元の境界を拡大した上で、画像のサイズを処理した後に得られるつながるされていない場合は、深刻な歪みである、あまりにも小さくなると。
そして、境界を拡大する多くの方法があり、本論文では、これらの方法を埋める方法を説明します。
-
これは、元の画像です。
-
= cv2.copyMakeBorder(IMG、50,50,50,50、cv2.BORDER_REPLICATE)
-
= cv2.copyMakeBorder(IMG、50,50,50,50、cv2.BORDER_REFLECT)
-
= cv2.copyMakeBorder(IMG、50,50,50,50、cv2.BORDER_REFLECT_101)
私は何の違いを知りません。
-
= cv2.copyMakeBorder(IMG、50,50,50,50、cv2.BORDER_CONSTANT、値= [0,255,0])
Srcは、次の行列を想定します
私たちは最初の一方向だけでは、そのようなトップ方向との議論、:
トップ= 5または10、底部= 0、右= 0、0を左、トップ値、すなわち、行数行SRCより大きい故意ここで注意してください。表示結果
borderType = BORDER_REFLECT:反射
説明:プレスBORDER_REFLECTは、SRC反射SRCに従って、境界まで追加追加されます。
borderType = BORDER_REPLICATE:コピー
説明:BORDER_REPLICATEは、境界のみを代表してコピーします。
= 5、ボトム= 5、左場合
BORDER_TYPE = BORDER_REFLECT_101:
説明:101、0は反射に参加しないことが示されています。その動作は第1のミラーで、反射が行います
サンプルコード:
インポートCV2の pic_path = R ' F:\ TEMP \ temp_0807 \デフ\ coco_0717 \ JPEGImages \ 000000049901.jpg ' IMG = cv2.imread(pic_path) tar_img = cv2.copyMakeBorder(IMG、0,50,0,50、cv2.BORDER_CONSTANT 、値= [0,0,0]) cv2.imwrite(pic_path、tar_img)
オリジナルリンクします。https://jingyan.baidu.com/article/e73e26c096074e24adb6a736.html
オリジナルリンクします。https://blog.csdn.net/zhangping1987/article/details/51141658