导航:首页 > 编程语言 > 图形编程怎么加载gif

图形编程怎么加载gif

发布时间:2023-06-29 01:43:11

‘壹’ MATLAB GUI 设计数字图像处理软件包括以下内容: 1,图像的读入 2 图像格式的转换包括jpg,bmp,gif等

近期正在做这个,给楼主一半代码,另一半不怎么懂
图像读入
[filename,pathname]=uigetfile({'*.jpg';'*.bmp';'*.tif';'*.*'},'载入图像');
if isequal(filename,0)|isequal(pathname,0)
errordlg('没有选中文件','出错');
return;
else
file=[pathname,filename];
x=imread(file);
set(handles.axes1,'HandleVisibility','ON');
axes(handles.axes1);
imshow(x);
set(handles.axes1,'HandleVisibility','OFF');
axes(handles.axes2);
imshow(x);
handles.img=x;
guidata(hObject,handles);
end
图像增强(不知道楼主吵让凳要几个增强)
直方图均衡化
global T
axes(handles.axes2);
T=getimage;
h=histeq(handles.img);
imshow(h);
handles.img=h;
guidata(hObject,handles);
频域滤波
axes(handles.axes2);
y1=handles.img;
f=double(y1); % 数据类型转换,matlab不支持图像的无符号整型的计算
g=fft2(f); % 傅里叶变换
g=fftshift(g); % 转换数据矩阵
[M,N]=size(g);
nn=2; %二阶巴特沃斯低通滤波器
d0=50; %截止频率50
m=fix(M/2); n=fix(N/2);
for i=1:M
for j=1:N
d=sqrt((i-m)^2+(j-n)^2);
h=1/(1+0.414*(d/d0)^(2*nn)); % 计算低通滤波器传递函数
result(i,j)=h*g(i,j);
end
end
result=ifftshift(result);
y2=ifft2(result);
y3=uint8(real(y2));
imshow(y3); % 显示处理后的图像

锐化
可以使用拉普拉斯算子进行滑颤锐化,具体可以使用fspecial函数与imfilter函数
灰度升旅化
global T
axes(handles.axes2);
T=getimage;
x=rgb2gray(handles.img);
imshow(x);
handles.img=x;
guidata(hObject,handles);
楼主先给几分呗,还有几份资料关于gui的一起发你邮箱

‘贰’ VisualStudio怎么用C语言进行图形编程

新建一个项目、选择win32项目,应用程序为windows程序,附加选项为空;在源代码目录中添加一个后缀为.c的源文件。接下来就可以写C代码了。

用c语言中通过调用windows的api函数,来显示窗口、菜单、滚动条、屏幕输出。

在《windows程序设计》一书中就有一个例子,显示一个标准的windows窗口,并在绘图区显示一个字符串。代码如下:

#include<windows.h>

LRESULTCALLBACKWndProc(HWND,UINT,WPARAM,LPARAM);

intWINAPIWinMain(HINSTANCEhInstance,HINSTANCEhPrevInstance,PSTRszCmdLine,intiCmdShow)
{
staticTCHARszAppName[]=TEXT("HelloWin");
HWNDhwnd;
MSGmsg;
WNDCLASSwndclass;

wndclass.style=CS_HREDRAW||CS_VREDRAW;
wndclass.lpfnWndProc=WndProc;
wndclass.cbClsExtra=0;
wndclass.cbWndExtra=0;
wndclass.hInstance=hInstance;
wndclass.hIcon=LoadIcon(NULL,IDI_APPLICATION);
wndclass.hCursor=LoadCursor(NULL,IDC_ARROW);
wndclass.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH);
wndclass.lpszMenuName=NULL;
wndclass.lpszClassName=szAppName;

if(!RegisterClass(&wndclass))
{
MessageBox(NULL,TEXT("ThisprogramrequiresWindowsNT!"),szAppName,MB_ICONERROR);
return0;
}
hwnd=CreateWindow(szAppName,
TEXT("TheHelloProgram"),
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT,
CW_USEDEFAULT,
CW_USEDEFAULT,
CW_USEDEFAULT,
NULL,
NULL,
hInstance,
NULL);
ShowWindow(hwnd,iCmdShow);
//UpdateWindow(hwnd);
while(GetMessage(&msg,NULL,0,0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
returnmsg.wParam;
}

LRESULTCALLBACKWndProc(HWNDhwnd,UINTmessage,WPARAMwParam,LPARAMlParam)
{
HDChdc;
PAINTSTRUCTps;
RECTrect;

switch(message)
{
caseWM_CREATE:
//PlaySound(TEXT("C:\WindowsNotify.wav"),NULL,SND_FILENAME|SND_ASYNC);
return0;
caseWM_PAINT:
hdc=BeginPaint(hwnd,&ps);
GetClientRect(hwnd,&rect);
DrawText(hdc,TEXT("Hello,Windows98!"),-1,&rect,DT_SINGLELINE|DT_CENTER|DT_VCENTER);
EndPaint(hwnd,&ps);
return0;
caseWM_DESTROY:
PostQuitMessage(0);
return0;
}
returnDefWindowProc(hwnd,message,wParam,lParam);
}


复制到刚才的.c文件中即可以编译运行。

‘叁’ C 图形界面编程

1、图形编程都是用的纯C函数库, 比如Windows的GDI,还有DirectX,以及开源的OpenGL。这些都是纯C库,也就是说会C语言就能开发图形界面和游戏了。C++当然也可以调用这些函数库,但不是必要的。
2、学GDI的话最好的书是《Windows程序设计.chm》这个文档,这东西网上到处都有。学OpenGL的话,有个网站Nehe有完整的教学。人翻译了这个教程的中文版,google “Nehe opengl” 就能找到了。

阅读全文

与图形编程怎么加载gif相关的资料

热点内容
MFC经典游戏编程 浏览:781
在线申请小额贷款源码 浏览:328
多个文件夹如何批量删除内容 浏览:246
电力载波单片机 浏览:591
单片机串行通讯 浏览:515
遍历两个对应列表python 浏览:491
数控编程演示软件哪里下载 浏览:686
程序员会6点下班吗 浏览:791
linuxdate时区 浏览:325
小说服务器怎么选 浏览:526
python自动化测试框架哪个最好 浏览:313
反编译后为什么不能回编 浏览:55
java反射获得属性值 浏览:39
程序员和甲方的矛盾 浏览:128
在地狱做程序员 浏览:765
银行app能做什么 浏览:238
追书缓存的小说在哪个文件夹 浏览:563
山科女生程序员 浏览:748
mybatis3源码分析 浏览:467
华为交换机常用配置命令 浏览:378