Function mindspore::dataset::WarpPerspectiveBilinear
Defined in File image_process.h
Function Documentation
-
bool mindspore::dataset::WarpPerspectiveBilinear(const LiteMat &src, LiteMat &dst, const LiteMat &M, int dst_w, int dst_h, PaddBorderType borderType, std::vector<uint8_t> &borderValue)
affine image by linear.
- Parameters
src – [in] Input image data.
dst – [in] Output image data.
M – [in] Transformation matrix
dst_w – [in] The width of the output image.
dst_h – [in] The height of the output image.
borderType – [in] Edge processing type.
PaddBorderType.PADD_BORDER_CONSTANT, fills the border with constant values.
PaddBorderType.PADD_BORDER_REPLICATE, fills the border with replicate mode.
PaddBorderType.PADD_BORDER_REFLECT_101, fills the border with reflect 101 mode.
PaddBorderType.PADD_BORDER_DEFAULT, default pad mode, use reflect 101 mode.
borderValue – [in] Boundary fill value.
- Returns
Return true if transform successfully.
Example/* Assume p_rgb is a pointer that points to an image with shape (width, height, channel) */ LiteMat lite_mat_src(width, height, channel, (void *)p_rgb, LDataType::UINT8); LiteMat lite_mat_dst; /* Get Perspective matrix and apply */ std::vector<Point> src = {Point(165, 270), Point(835, 270), Point(360, 125), Point(615, 125)}; std::vector<Point> dst = {Point(165, 270), Point(835, 270), Point(100, 100), Point(500, 30)}; LiteMat M; GetPerspectiveTransform(src, dst, M); std::vector<uint8_t> border_value = {0, 0, 0}; WarpPerspectiveBilinear(lite_mat_src, lite_mat_dst, M, width, height, PaddBorderType::PADD_BORDER_CONSTANT, border_value); std::cout << lite_mat_dst.width_ << " " << lite_mat_dst.height_ << " " << lite_mat_dst.channel_ << std::endl;