摘要:
其实就是用sin或cos对x,y坐标进行变换,处理的时候依然是反向变换。类似的,用不同的函数能得到不同的扭曲效果,比如log,1/x,exp等等。效果如下:代码如下(还给出了如何生成gif图片的代码):clear all;close all;clc;img=imread('lena.jpg');[h... 阅读全文
摘要:
前一段介绍了从矩形图像到圆柱的正向投影,看这里和这里。今天介绍如何从已经投影的图像反映射到原图像上。本来此种变换一定是需要数学公式的,不过这里只是用了一个很简单的方式来完成反映射。具体就把每一列有像素数据的长度拉伸到原图像的高就行了。原图像是这样:处理后:看着感觉还可以,不过这样显然是不合数学公式的... 阅读全文
摘要:
算是一种特效模糊方式吧,算法原理就是用邻域随机像素代替当前所处理的像素就可以了。效果如下图所示:原图:处理后结果:matlab代码如下:clear all; close all;clc;img=imread('lena.jpg');[h,w]=size(img);imgn=img;n=3; %... 阅读全文
摘要:
这个其实也算是圆柱体投影了,不过上一篇文章是从正面看,得到的是凸形的结果,而这个是从反面看,得到的是凹形的结果。计算公式就不写了,大致介绍一下,计算公式中关于x坐标求法和上篇一样,y坐标则正好是上篇公式的反变换,结合上篇公式代码和本篇的代码,应该都不是很难理解的。下面是hfOV为pi/2时得到的变换... 阅读全文
摘要:
圆柱投影就是将一张二维的图像投影到三维的圆柱体上,不过在显示图像的时候依然是以二维的形式给出。投影最重要的步骤就是计算投影变换公式,和图像旋转类似,只要得到变换公式,再依照公式进行代码编写就很容易了。这里就不写投影变换公式的推导过程了,直接给出变换公式。公式分为正变换和反变换,编程时,反变换公式通常... 阅读全文
摘要:
这个程序我最初是用FreeImage写的,这两天改成了matlab,再不贴上来,我就要忘了。看到一篇文章有这样的变换,挺有意思的,就拿来试了一下,文章点此。全景图到穹顶图变换,通俗的说就是将全景图首尾相接做成一个圆环的样子。先看下面这张图:下面的矩形就是我们要处理的全景图,上面的矩形是变换后的图像。... 阅读全文
摘要:
% --- Executes on button press in pushbutton5.function pushbutton5_Callback(hObject, eventdata, handles)% hObject handle to pushbutton5 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)global src_img;[filen... 阅读全文
摘要:
% --- Executes on button press in pushbutton1.function pushbutton1_Callback(hObject, eventdata, handles)% hObject handle to pushbutton1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)[filename,pathname] =... 阅读全文
摘要:
1.在这个网址下载一个工具包,里面应该有四个文件:tabselectionfcp.p、tabselectionfcn.m、tabpanel.p和tabpanel.m,显然代码用.p格式进行加密了。2.建立一个空GUI文件,就起名kong.fig吧。3.在kong.fig上画一个Static Text,默认的tag为text1。4.终端运行tabpanel('kong.fig','text1');命令,得到如下界面:5.点击add panel就能添加选项卡了,如图:6.选中不同的选项卡,点击edit,就能进入常见的GUI编辑模式:7.编辑完保存下就行了,所有的功能 阅读全文
摘要:
#include #include using namespace std;class singleton{private: singleton(){}; //构造函数为private,禁止客户new出实例 virtual ~singleton() { if (instance!=NULL) delete instance; }; static singleton *instance;public: static singleton *GetInstance() { if (instance==NULL... 阅读全文