How to pad an array(cv::Mat
) with zeros in OpenCV?
An another way to pad an image is to use copyMakeBorder function:
C++: void copyMakeBorder(InputArray src, OutputArray dst, int top, int bottom, int left, int right, int borderType, const Scalar& value=Scalar() )
Then padding with zeros is simply like that
Mat image,image_pad;
copyMakeBorder(image,image_pad,1,1,1,1,BORDER_CONSTANT,Scalar(0));
Finally, here is the tutorial of Adding borders to your images.