资源简介
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
相关资源
- PID_AutoTune_v0.rar
- vspd7.2.308.zip
- 价值2k的H漫画小说系统
- Pythonamp;课堂amp;笔记(高淇amp;400;集第
- ddos压力测试工具99657
- UML建模大全
- 开源1A锂电池充电板TP4056原理图+PCB
- m1卡 ic卡可选择扇区初始化加密软件
- TSCC.exe
- FTP课程设计(服务端+客户端)
- 计算机图形学 边填充算法实现代码
- 电力系统潮流计算程序集合
- oracle数据迁移项目实施方案
- Web Api 通过文件流 文件到本地
- Visio图标-最新最全的网络通信图标库
- Spire API文档
- OpenGL参考手册
- Python中Numpy库最新教程
- SPD博士V5.3.exe
- 直流无刷电机方波驱动 stm32 例程代码
- layui后台管理模板
- 仿知乎界面小程序源代码
- 云平台-阿里云详细介绍
- photoshop经典1000例
- scratch垃圾分类源码(最终版本).sb
- IAR ARM 7.8破解
- TI CCS V5.4 安装步骤及破解文件
- 松下plc FP-XH的驱动
- 局域网硬件信息收集工具
- 加快Windows XP操作系统开机速度
评论
共有 条评论