资源简介
Transformation.rar
代码片段和文件信息
#include
#include
#include
#include
#include
using namespace cv;
using namespace std;
#define PI 3.141592
#define WINDOW_wrap_1 “扭曲变换最近邻插值“
#define WINDOW_wrap_2 “扭曲变换双线性插值“
#define WINDOW_wave_1 “波动变换最近邻插值“
#define WINDOW_wave_2 “波动变换双线性插值“
#define WINDOW_spherical_1 “球形变换最近邻插值“
#define WINDOW_spherical_2 “球形变换双线性插值“
//定义Mat
Mat src;
Mat dst_wrap_1 dst_wrap_2;
Mat dst_wave_1 dst_wave_2;
Mat dst_spherical_1 dst_spherical_2;
Mat map_wrap_x_1 map_wrap_y_1;
Mat map_wrap_x_2 map_wrap_y_2;
Mat map_wave_x_1 map_wave_y_1;
Mat map_wave_x_2 map_wave_y_2;
Mat map_spherical_x_1 map_spherical_y_1;
Mat map_spherical_x_2 map_spherical_y_2;
//图像的宽高
int widthheight;
int rmax;//定义扭曲变换的rmax
//滑动条
//扭曲设定alpha值
const int slider_wrap_max = 20;
int slider_wrap;
//波动设定x轴y轴的周期值和幅值
const int slider_wave_Tx_max = 30;
int slider_wave_Tx;
const int slider_wave_Ty_max = 30;
int slider_wave_Ty;
const int slider_wave_ax_max = 20;
int slider_wave_ax;
const int slider_wave_ay_max = 20;
int slider_wave_ay;
//球形设定rho值
const int slider_spherical_max = 100;
int slider_spherical;
//保存为1,初始为0
int slider_save;
//函数定义
void WrapImage(Mat &mapx Mat &mapy int width int height int alpha);
void on_trackbar_wrap_1(int void*);
void on_trackbar_wrap_2(int void*);
void on_trackbar_wrap_save_1(int flag void*);
void on_trackbar_wrap_save_2(int flag void*);
void WaveImage(Mat &mapx Mat &mapy int width int height float axfloat ayfloat Tx float Ty);
void on_trackbar_wave_1(int void*);
void on_trackbar_wave_2(int void*);
void on_trackbar_wave_save_1(int flag void*);
void on_trackbar_wave_save_2(int flag void*);
void SphericalImage(Mat &mapx Mat &mapy int width int height float rho);
void on_trackbar_spherical_1(int void*);
void on_trackbar_spherical_2(int void*);
void on_trackbar_spherical_save_1(int flag void*);
void on_trackbar_spherical_save_2(int flag void*);
int main()
{
//读入图像
src = imread(“D:/Z/5数字图像处理/数字图像处理实验材料/测试图像/baboon.bmp“ 1);
if (!src.data)
{
printf(“Error loading src \n“);
return -1;
}
//取图像长宽
width = src.rows;
height = src.cols;
char str[10];
cout << “Input rmax=“;
cin >> str;
rmax = atoi(str);
//初始化x和y矩阵
//扭曲
map_wrap_x_1.create(src.size() CV_32FC1);
map_wrap_y_1.create(src.size() CV_32FC1);
map_wrap_x_2.create(src.size() CV_32FC1);
map_wrap_y_2.create(src.size() CV_32FC1);
//波动
map_wave_x_1.create(src.size() CV_32FC1);
map_wave_y_1.create(src.size() CV_32FC1);
map_wave_x_2.create(src.size() CV_32FC1);
map_wave_y_2.create(src.size() CV_32FC1);
//球形
map_spherical_x_1.create(src.size() CV_32FC1);
map_spherical_y_1.create(src.size() CV_32FC1);
map_spherical_x_2.create(src.size() CV_32FC1);
map_spherical_y_2.create(src.size() CV_32FC1);
//初始化开始窗口
//扭曲
namedWindow(WINDOW_wrap_11);
imshow(
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 988 2018-12-16 12:16 Transformation.sln
文件 12214 2018-12-20 20:37 Transformation.cpp
----------- --------- ---------- ----- ----
13202 2
- 上一篇:基于单片机的电子秤毕设PPT
- 下一篇:OpenGL文件.zip
相关资源
- OpenGL文件.zip
- 3dsmax2018keygen64.rar
- CognexVisionPro初级视频教程.txt
- ysfGame.zip
- 脑电信号处理.rar
- 普中PZ6806L开发板光盘资料结构必看
- 机械设计手册PDF和软件版.txt
- KT国际彩2018.7修复完整无错.rar
- ai智能伪原创.zip
- 数据结构农夫过河.rar
- 关于nfa确定化.zip
- B.pdf
- 百度网盘信息.txt
- JQ8900串口.zip
- 7E种子号.txt
- 链接-提取码.txt
- 北理工2018最优化方法大作业90.zip
- 体检系统.sln
- 220vto5v_Project.rar
- Cprimeplus第六版程序清单.zip
- 网盘.txt
- 电影票预订系统.doc
- 迅雷.txt
- FortranonVSonWindows10安装方法.txt
- 交通咨询管理系统课程设计.doc
- qq_41508508_10582420.zip
- Spark.txt
- visio2013.txt
- ArcGIS全套文件.txt
- 学成在线百度网盘链接.txt
评论
共有 条评论