大作业5(重映射)

来源:互联网 发布:电视直播 for mac 编辑:程序博客网 时间:2024/06/13 17:31
#include<opencv2/opencv.hpp>
#include<iostream>


using namespace cv;
int main(int argc, char **argv){
Mat src = imread("C:/opencv/test.jpg");
if (src.empty()){
printf("could not load image..\n");
return -1;
}
namedWindow("MyWindow", CV_WINDOW_AUTOSIZE);
imshow("MyWindow", src);
Mat map_x, map_y,dst;
map_x.create(src.size(),CV_32FC1);
map_y.create(src.size(), CV_32FC1);
for (int row = 0; row < src.rows; row++)
{
for (int col = 0; col < src.cols; col++)
{
map_x.at<float>(row, col) = static_cast<float>(src.cols-col);
map_y.at<float>(row, col) = static_cast<float>(row);
}
}
remap(src,dst,map_x,map_y,INTER_LINEAR,BORDER_CONSTANT);
imshow("nihao", dst);
cvWaitKey(0);
return 0;
}




//col和row很容易出错,多想想,可以从竖线和横线的角度想想