| @@ -613,16 +613,16 @@ void ImplementAffine(LiteMat &src, LiteMat &out_img, double M[6], std::vector<si | |||||
| IM[2] = b1; | IM[2] = b1; | ||||
| IM[5] = b2; | IM[5] = b2; | ||||
| out_img.Init(dsize[0], dsize[1]); | |||||
| out_img.Init(dsize[0], dsize[1], sizeof(Pixel_Type)); | |||||
| for (int y = 0; y < out_img.height_; y++) { | for (int y = 0; y < out_img.height_; y++) { | ||||
| for (int x = 0; x < out_img.width_; x++) { | for (int x = 0; x < out_img.width_; x++) { | ||||
| int src_x = IM[0] * x + IM[1] * y + IM[2]; | int src_x = IM[0] * x + IM[1] * y + IM[2]; | ||||
| int src_y = IM[3] * x + IM[4] * y + IM[5]; | int src_y = IM[3] * x + IM[4] * y + IM[5]; | ||||
| if (src_x >= 0 && src_y >= 0 && src_x < src.width_ && src_y < src.height_) { | if (src_x >= 0 && src_y >= 0 && src_x < src.width_ && src_y < src.height_) { | ||||
| Pixel_Type src_pixel = static_cast<Pixel_Type *>(src.data_ptr_)[src_y * src.width_ + src_x]; | Pixel_Type src_pixel = static_cast<Pixel_Type *>(src.data_ptr_)[src_y * src.width_ + src_x]; | ||||
| static_cast<Pixel_Type *>(out_img.data_ptr_)[y * src.width_ + x] = src_pixel; | |||||
| static_cast<Pixel_Type *>(out_img.data_ptr_)[y * out_img.width_ + x] = src_pixel; | |||||
| } else { | } else { | ||||
| static_cast<Pixel_Type *>(out_img.data_ptr_)[y * src.width_ + x] = borderValue; | |||||
| static_cast<Pixel_Type *>(out_img.data_ptr_)[y * out_img.width_ + x] = borderValue; | |||||
| } | } | ||||
| } | } | ||||
| } | } | ||||