怎样让一个程序看起来美观 有条理 ps 是cc语言入门 为什么图2不行.是哪里做的不对呢 图1看起来太

您所在位置: &
&nbsp&&nbsp&nbsp&&nbsp
基于C语言的红外图像处理程序设计.doc34页
本文档一共被下载:
次 ,您可免费全文在线阅读后下载本文档
文档加载中...广告还剩秒
需要金币:300 &&
你可能关注的文档:
··········
··········
武汉工业学院
毕 业 设 计
设计题目:基于C语言的红外图像处理程序设计
院: 电气与电子工程学院
业: 电子信息科学与技术
指导教师:
Abstract 2
1绪论…………………………………………………………………………………….3
1.1本论文的背景和意义 3
1.2红外成像技术的发展及现状 4
1.3 本论文的主要内容 5
2红外图像的产生机理及红外图像处理的过程 6
2.1红外图像的产生机理及特点 6
2.1.1红外图像的产生机理 6
2.1.2红外图像的特点 7
2.2红外图像处理过程 8
3 红外图像处理的C语言的程序设计 9
3.1非均匀性校正的算法 9
3.2噪声去除 10
3.2.1噪声去除之中值滤波法 10
3.2.2中值滤波的c语言程序 12
3.3灰度变换 13
3.3.1灰度变换的概念 13
3.3.2灰度变换之直方图均衡化处理3.4为彩色变换 17
3.4.1伪彩色变换的几种方法 17
3.4.2伪彩色变换的c程序 21
参考文献 32 摘要
随着红外焦平面技术的发展,红外热像仪广泛应用于多种领域,针对目前红外图像中噪声较大,对比度较低,视觉效果不好,分辨图像细节能力比较差等缺点。
红外图像处理过程包括非均匀性校正 NUC
,盲元检测填充,直方图统计和灰度变换等步骤;以提高红外图像的质量和增强系统处理的实时性为出发点,结合已有的红外图像实时处理算法,本文设计和完成了基于C语言的红外图像处理,通过处理消除了红外图像的非均匀性,对红外图像进行了增强,取得了良好的效果。主要工作如下:本文首先阐述了红外图像的产生机理,分析了红外图像的特点,介绍了红外图像与可见光图像的区别,讨论了红外图像中需要处理
正在加载中,请稍后...图形学第2章_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
文档贡献者
评价文档:
图形学第2章
大小:1.70MB
登录百度文库,专享文档复制特权,财富值每天免费拿!
你可能喜欢基于C语言的红外图像处理程序设计基于C语
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
基于C语言的红外图像处理程序设计
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer-4.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口东北大学计算机图形学2_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
文档贡献者
评价文档:
东北大学计算机图形学2
大小:1.72MB
登录百度文库,专享文档复制特权,财富值每天免费拿!
你可能喜欢如何用C语言做一个windows应用程序窗口界面_百度知道
如何用C语言做一个windows应用程序窗口界面
可以使用CreateWindow函数。CreateWindow,Windows API宏, 在WinUser.h中根据是否已定义Unicode被分别定义为CreateWindowW和CreateWindowA,后两者又被分别定义为对CreateWindowExW和CreateWindowExA函数的调用。函数原型:HWND CreateWindow(LPCTSTR lpClassName,LPCTSTR lpWindowName,DWORD dwStyle,int x,int y,int nWidth,int nHeight,HWND hWndParent,HMENU hMenu,HANDLE hlnstance,LPVOID lpParam);参数:详情lpClassName指向一个空结束的字符串或整型数atom。如果该参数是一个整型量,它是由此前调用theGlobalAddAtom函数产生的全局量。这个小于0xC000的16位数必须是lpClassName参数字的低16位,该参数的高位必须是0。如果lpClassName是一个字符串,它指定了窗口的类名。这个类名可以是任何用函数RegisterClass注册的类名,或是任何预定义的控制类名。请看说明部分的列表。LPWindowName指向一个指定窗口名的空结束的字符串指针。如果窗口风格指定了标题条,由lpWindowName指向的窗口标题将显示在标题条上。当使用Createwindow函数来创建控制例如按钮,选择框和静态控制时,可使用lpWindowName来指定控制文本。dwStyle指定创建窗口的风格。该参数可以是下列窗口风格的组合再加上说明部分的控制风格。风格意义:WS_BORDER:创建一个带边框的窗口。WS_CAPTION:创建一个有标题框的窗口(包括WS_BORDER风格)。WS_CHILD:创建一个子窗口。这个风格不能与WS_POPUP风格合用。WS_CHILDWINDOW:与WS_CHILD相同。WS_CLIPCHILDREN:当在父窗口内绘图时,排除子窗口区域。在创建父窗口时使用这个风格。WS_CLIPSIBLINGS:排除子窗口之间的相对区域,也就是,当一个特定的窗口接收到WM_PAINT消息时,WS_CLIPSIBLINGS 风格将所有层叠窗口排除在绘图之外,只重绘指定的子窗口。如果未指定WS_CLIPSIBLINGS风格,并且子窗口是层叠的,则在重绘子窗口的客户区时,就会重绘邻近的子窗口。WS_DISABLED:创建一个初始状态为禁止的子窗口。一个禁止状态的窗口不能接受来自用户的输入信息。WS_DLGFRAME:创建一个带对话框边框风格的窗口。这种风格的窗口不能带标题条。WS_GROUP:指定一组控制的第一个控制。这个控制组由第一个控制和随后定义的控制组成,自第二个控制开始每个控制,具有WS_GROUP风格,每个组的第一个控制带有WS_TABSTOP风格,从而使用户可以在组间移动。用户随后可以使用光标在组内的控制间改变键盘焦点。WS_HSCROLL:创建一个有水平滚动条的窗口。WS_ICONIC:创建一个初始状态为最小化状态的窗口。与WS_MINIMIZE风格相同。WS_MAXIMIZE:创建一个初始状态为最大化状态的窗口。WS_MAXIMIZEBOX:创建一个具有最大化按钮的窗口。该风格不能与WS_EX_CONTEXTHELP风格同时出现,同时必须指定WS_SYSMENU风格。WS_OVERLAPPED:产生一个层叠的窗口。一个层叠的窗口有一个标题条和一个边框。与WS_TILED风格相同。WS_OVERLAPPEDWINDOW:创建一个具有WS_OVERLAPPED,WS_CAPTION,WS_SYSMENU WS_THICKFRAME,WS_MINIMIZEBOX,WS_MAXIMIZEBOX风格的层叠窗口,与WS_TILEDWINDOW风格相同。WS_POPUP:创建一个弹出式窗口。该风格不能与WS_CHILD风格同时使用。WS_POPUPWINDOW:创建一个具有WS_BORDER,WS_POPUP,WS_SYSMENU风格的窗口,WS_CAPTION和WS_POPUPWINDOW必须同时设定才能使窗口某单可见。WS_SIZEBOX:创建一个可调边框的窗口,与WS_THICKFRAME风格相同。WS_SYSMENU:创建一个在标题条上带有窗口菜单的窗口,必须同时设定WS_CAPTION风格。WS_TABSTOP:创建一个控制,这个控制在用户按下Tab键时可以获得键盘焦点。按下Tab键后使键盘焦点转移到下一具有WS_TABSTOP风格的控制。WS_THICKFRAME:创建一个具有可调边框的窗口,与WS_SIZEBOX风格相同。WS_TILED:产生一个层叠的窗口。一个层叠的窗口有一个标题和一个边框。与WS_OVERLAPPED风格相同。WS_TILEDWINDOW:创建一个具有WS_OVERLAPPED,WS_CAPTION,WS_SYSMENU, WS_THICKFRAME,WS_MINIMIZEBOX,WS_MAXIMIZEBOX风格的层叠窗口。与WS_OVERLAPPEDWINDOW风格相同。WS_VISIBLE:创建一个初始状态为可见的窗口。WS_VSCROLL:创建一个有垂直滚动条的窗口。X指定窗口的初始水平位置。对一个层叠或弹出式窗口,X参数是屏幕坐标系的窗口的左上角的初始X坐标。对于子窗口,x是子窗口左上角相对父窗口客户区左上角的初始X坐标。如果该参数被设为CW_USEDEFAULT则系统为窗口选择缺省的左上角坐标并忽略Y参数。CW_USEDEFAULT只对层叠窗口有效,如果为弹出式窗口或子窗口设定,则X和y参数被设为零。Y指定窗口的初始垂直位置。对一个层叠或弹出式窗口,y参数是屏幕坐标系的窗口的左上角的初始y坐标。对于子窗口,y是子窗口左上角相对父窗口客户区左上角的初始y坐标。对于列表框,y是列表框客户区左上角相对父窗口客户区左上角的初始y坐标。如果层叠窗口是使用WS_VISIBLE风格位创建的并且X参数被设为CW_USEDEFAULT,则系统将忽略y参数。nWidth以设备单元指明窗口的宽度。对于层叠窗口,nWidth或是屏幕坐标的窗口宽度或是CW_USEDEFAULT。若nWidth是CW_USEDEFAULT,则系统为窗口选择一个缺省的高度和宽度:缺省宽度为从初始X坐标开始到屏幕的右边界,缺省高度为从初始Y坐标开始到目标区域的顶部。CW_USEDEFAULT只对层叠窗口有效;如果为弹出式窗口和子窗口设定CW_USEDEFAULT标志则nWidth和nHeight被设为零。nHeight以设备单元指明窗口的高度。对于层叠窗口,nHeight是屏幕坐标的窗口宽度。若nWidth被设为CW_USEDEFAULT,则系统忽略nHeight参数。hWndParent指向被创建窗口的父窗口或所有者窗口的句柄。若要创建一个子窗口或一个被属窗口,需提供一个有效的窗口句柄。这个参数对弹出式窗口是可选的。Windows NT 5.0;创建一个消息窗口,可以提供HWND_MESSAGE或提供一个己存在的消息窗口的句柄。hMenu菜单句柄,或依据窗口风格指明一个子窗口标识。对于层叠或弹出式窗口,hMenu指定窗口使用的菜单:如果使用了菜单类,则hMenu可以为NULL。对于子窗口,hMenu指定了该子窗口标识(一个整型量),一个对话框使用这个整型值将事件通知父类。应用程序确定子窗口标识,这个值对于相同父窗口的所有子窗口必须是唯一的。hlnstance与窗口相关联的模块实例的句柄。lpParam指向一个值的指针,该值传递给窗口WM_CREATE消息。该值通过在IParam参数中的CREATESTRUCT结构传递。如果应用程序调用CreateWindow创建一个MDI客户窗口,则lpParam必须指向一个CLIENTCREATESTRUCT结构。返回值:如果函数成功,返回值为新窗口的句柄:如果函数失败,返回值为NULL。若想获得更多错误信息,请调用GetLastError函数。例程://&Window.cpp&:&Defines&the&entry&point&for&the&application.#include&&windows.h&LRESULT&CALLBACK&&&&WndProc(HWND,&UINT,&WPARAM,&LPARAM);&&int&APIENTRY&WinMain(HINSTANCE&hInstance,&&&&//应用程序的实例句柄,&&&&&&&&&&&&&&&&&&&&&HINSTANCE&hPrevInstance,&&&&&&&&&&&&&&&&&&&&&LPSTR&&&&&lpCmdLine,&&&&//命令行&&&&&&&&&&&&&&&&&&&&&int&&&&&&&nCmdShow)&&&&//显示方式{&&&&MSG&&&&&HWND&hW&&&&char&szTitle[]=&系统信息&;&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&//&The&title&bar&text&&&&char&szWindowClass[]=&popMsg&;&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&//&The&title&bar&text&&&&WNDCLASSEX&wcex={0};&&&&wcex.cbSize&=&sizeof(WNDCLASSEX);&&&&&&&&//WNDCLASSEX结构体大小&&&&wcex.style&&&&&&&&&&&&=&CS_HREDRAW&|&CS_VREDRAW;&&&&//位置改变时重绘&&&&wcex.lpfnWndProc&&&&=&(WNDPROC)WndP&&&&&&&&&&&&//消息处理函数&&&&wcex.hInstance&&&&&&&&=&0;&&&&&&&&&&&&//当前实例句柄&&&&wcex.hbrBackground&&&&=&(HBRUSH)COLOR_WINDOWFRAME;&&&&//背景色&&&&wcex.lpszClassName&&&&=&szWindowC&&&&&&&&//参窗口类名&&&&wcex.hIcon&&&&&&&&&&&&=0;&&&&&&&&//图标&&&&wcex.hCursor&&&&&&&&=LoadCursor(NULL,&IDC_ARROW);&&&&&&&&//光标&&&&wcex.lpszMenuName&&&&=0;&&&&&&&&//菜单名称&&&&wcex.hIconSm&&&&&&&&=0;&&&&&&&&//最小化图标&&&&RegisterClassEx(&wcex);&&&&&&&&&&&&//注册窗口类&&&&&hWnd&=&CreateWindow(szWindowClass,&szTitle,&WS_SYSMENU|WS_VISIBLE,&&&&//创建窗口&&&&&&CW_USEDEFAULT,CW_USEDEFAULT,&400,&300,&NULL,&NULL,&0,&NULL);&&&&if&(!hWnd){&&&&&&return&FALSE;&&&&}&&&&&ShowWindow(hWnd,&nCmdShow);&&&&UpdateWindow(hWnd);&&&&&while&(GetMessage(&msg,&NULL,&0,&0))&&&&&//&消息循环:&&&&{&&&&&&&&TranslateMessage(&msg);&&&&&&&&//转化虚拟按键到字符消息&&&&&&&&DispatchMessage(&msg);&&&&&&&&//分派消息调用回调函数&&&&}&&&&return&msg.wP}&LRESULT&CALLBACK&WndProc(HWND&hWnd,&UINT&message,&WPARAM&wParam,&LPARAM&lParam){&&&&PAINTSTRUCT&&&&&HDC&&&&&RECT&&&&&switch&(message)&&&&&{&&&&&&&&&&&case&WM_PAINT:&&&&&&&&//重绘消息&&&&&&&&&&&&hdc&=&BeginPaint(hWnd,&&ps);&&&&&&&&&&&&GetClientRect(hWnd,&&rect);&&&&&&&&&&&&MoveToEx(hdc,10,10,0);&&&&&&&&&&&&SelectObject(&hdc,::CreatePen(PS_SOLID,1,RGB(0xFF,0,0)));&&&&&&&&&&&&LineTo(hdc,100,200);&&&&&&&&&&&&//&&&&&&&&&&&&DrawText(hdc,&szHello,&strlen(szHello),&&rt,&DT_CENTER);&&&&&&&&&&&&EndPaint(hWnd,&&ps);&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&case&WM_CREATE:&&&&&&&&&&&&&&&&&&&&&&&&&RegisterHotKey(hWnd&,1,&0&,0x41&);&&&&&&&&&&&&&&&&&&&&case&WM_HOTKEY:&&&&&&&&&&&&MessageBox(0,0,0,0);&&&&&&&&&&&&&&&&&&&&case&WM_TIMER:&&&&&&&&&&&&&&&&&&&&&&&&&&case&WM_DESTROY:&&&&//窗口销毁消息&&&&&&&&&&&&PostQuitMessage(0);&&&&&&&&&&&&&&&&&&&&default:&&&&&&&&&&&&return&DefWindowProc(hWnd,&message,&wParam,&lParam);&&&}&&&return&0;}
其他类似问题
为您推荐:
一楼答的MFC一般需要使用C++语言。使用Win32可以简单的使用C语言完成Windows应用程序窗口界面。推荐你看看《Windows程序设计》这本书,我有电子版,如果需要给我发邮件。
其他2条回答
小弟建议您用
Visual C# 2008 软件
这不是问题,这是标准模块
属于秒杀问题 根本不需要任何演算法(内建)!
用mfc,网上搜搜很多的
c语言的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁

我要回帖

更多关于 计算机二级c语言 的文章

 

随机推荐