画像に畳み込み演算が含まれる場合、0パディングがよく使用されます。0パディングは特別なエッジパディングです。copyMakeBorder()関数はopencv-pythonライブラリで使用されます。この関数にはさまざまなパディングメソッドがあります。
元の画像:
cv2.BORDER_REPLICATEを入力し、最後のピクセル、コード、および効果を繰り返します。
img2 = cv2.copyMakeBorder(img1,200,200,200,200,cv2.BORDER_REPLICATE)
#调整绘制尺寸
plt.figure(figsize=(5,5))
plt.imshow(img2,interpolation='bicubic')
cv2.BORDER_REFLECTを使用して、境界要素の鏡像を塗りつぶします。
img3 = cv2.copyMakeBorder(img1,200,200,200,200,cv2.BORDER_REFLECT)
cv2.BORDER_REFLECTと同様に、cv2.BORDER_REFLECT_101を入力します。
img3 = cv2.copyMakeBorder(img1,200,200,200,200,cv2.BORDER_REFLECT_101)
肉眼では大きな違いはわかりませんが、2つの画像の違いは、それらがまだ異なっていることを示しています。
plt.imshow(img4-img3,interpolation='bicubic')
具体的な違いは何ですか?ご存知の場合は教えてください。
cv2.BORDER_WRAPで入力します。
img5 = cv2.copyMakeBorder(img1,200,200,200,200,cv2.BORDER_WRAP)
これにcv2.BORDER_CONSTANTを入力し、指定した値で境界を追加します。デフォルトは黒です。
img6 = cv2.copyMakeBorder(img1,10,10,10,10,cv2.BORDER_CONSTANT)
#添加红色边界
#RED = [255,0,0]
#img6 = cv2.copyMakeBorder(img1,10,10,10,10,cv2.BORDER_CONSTANT,value=RED)
次の3行のコードは、指定された赤い境界線を追加するためのものです。
Matlab、Python、C ++でプログラミング、機械学習、コンピュータービジョン理論の実装とガイダンス、学部と修士の両方の学位、塩漬け魚の取引、専門家の回答を知ってください。QQ番号757160542に連絡してください。