收藏 分销(赏)

图像处理系统详细设计说明书.doc

上传人:可**** 文档编号:10145943 上传时间:2025-04-23 格式:DOC 页数:16 大小:71.54KB
下载 相关 举报
图像处理系统详细设计说明书.doc_第1页
第1页 / 共16页
图像处理系统详细设计说明书.doc_第2页
第2页 / 共16页
图像处理系统详细设计说明书.doc_第3页
第3页 / 共16页
图像处理系统详细设计说明书.doc_第4页
第4页 / 共16页
图像处理系统详细设计说明书.doc_第5页
第5页 / 共16页
点击查看更多>>
资源描述

1、案卷号日期图像处理系统详细设计说明书 作 者: YOUNG REGIN GROUP团队 完成日期: 2016.8。24 签 收 人: 签收日期: 修改情况记录:版本号修改批准人修改人修改日期签收人1。0杨开2016。8231.1杨开2016。824详细设计说明书目录1 引言21。1 编写目的21。2 背景21.3 定义21.4 参考资料22 程序系统的结构33 系统登陆设计说明43。1 主窗口设计43.2 图像旋转模块功能设计43。3图像缩放模块设计43.4 图片水印效果模块设计53。5 照片版式处理模块设计53.6 流程逻辑64 位图数据的存储形式5 限制条件46 测试计划41 引言1.1

2、编写目的本详细设计说明书主要目的是对图像管理系统的功能设计进行详尽的说明。本说明书主要写了图像管理系统功能模块的详细设计,为后来的开发提供依据与参考。详细设计说明书面向人员有:程序设计人员、数据库设计人员,质量检测人员。1。2 背景a 项目名称:图像管理系统b 本项目的任务提出者:西安软件服务外包学院开发者:YOUNG REGIN GROUP 团队1。3 定义本系统属于开发小型的图像处理软件,主要用于实现图像的显示与批量转换操作。实现各种图像格式的显示。支持图像的单一转换与批量转换。实现位图的各种常规操作。1。4 参考资料C+程序设计,谭浩强,清华大学出版社;Visual C+项目开发案例全程

3、实录,梁水,李伟明著,清华大学出版社。图像处理模块2 程序系统的结构退出系统主窗体批量转换与处理照片处理PSD文件管理打开位图图像锐化处理图像反色处理图像旋转 位图转换成GIF图像浮雕效果水印效果批量处理PSD文件批量转换PSD文件浏览位图转换成GIF位图转换为PNG水印效果批量处理GIF转换成位图JPEG转换成位图位图转换成JPEG这是“图像管理系统”的整体系统结构图。3 系统整体及模块显示设计说明3。1 主窗口设计在这个系统里,主要实现用户登录进入系统后可以查询和添加相关信息.工作区菜单代码:m_wndToolBar。GetToolBarCtrl().SetImageList(&m_Ima

4、geList);m_wndToolBar。SetButtonText(0,锐化处理”);m_wndToolBar.SetButtonText(1,”反色处理”);m_wndToolBar。SetButtonText(2,”图像旋转);m_wndToolBar。SetButtonText(3,图像平移”);m_wndToolBar。SetButtonText(4,”图像缩放”);m_wndToolBar.SetButtonText(5,水印效果);m_wndToolBar。SetButtonText(6,”位图转换JPEG);m_wndToolBar.SetButtonText(7,JPEG转换

5、位图”);m_wndToolBar。SetButtonText(8,”水印批量处理);m_wndToolBar.SetButtonText(9,PSD文件浏览);m_wndToolBar。SetButtonText(10,PSD批量转换);m_wndToolBar。SetButtonText(11,”照片版式处理);设置状态栏,关联图标资源:UINT nID; /控制状态栏里面的分栏 m_wndStatusBar。SetPaneInfo(0,nID,SBPS_STRETCH|SBPS_NOBORDERS,100); /返回值存nID中 m_wndStatusBar.SetPaneText(0,

6、就绪); m_wndStatusBar.SetPaneInfo(1,nID,SBPS_NORMAL,100); m_wndStatusBar。SetPaneText(1,大写); m_wndStatusBar。SetPaneInfo(2,nID,SBPS_POPOUT,100);m_wndStatusBar。SetPaneText(2,数字);/加载图像资源m_ImageList.Create(32, 32, ILC_COLOR32 | ILC_MASK, 1, 1);m_ImageList.Add(:AfxGetApp()-LoadIcon(IDI_ICON3));m_ImageList。

7、Add(:AfxGetApp()-LoadIcon(IDI_ICON1);m_ImageList.Add(:AfxGetApp()-LoadIcon(IDI_ICON2);m_ImageList.Add(::AfxGetApp()LoadIcon(IDI_ICON4));m_ImageList.Add(::AfxGetApp()LoadIcon(IDI_ICON5));m_ImageList。Add(::AfxGetApp()LoadIcon(IDI_ICON6));m_ImageList.Add(:AfxGetApp()LoadIcon(IDI_ICON7);m_ImageList。Add(

8、AfxGetApp()-LoadIcon(IDI_ICON8));m_ImageList.Add(:AfxGetApp()LoadIcon(IDI_ICON9);m_ImageList。Add(::AfxGetApp()-LoadIcon(IDI_ICON10);m_ImageList.Add(::AfxGetApp()LoadIcon(IDI_ICON11);m_ImageList.Add(::AfxGetApp()-LoadIcon(IDI_ICON12);3.2 图像旋转模块功能设计1。添加一个对话框类,类名为CImageRota。窗口如下:2。向对话框中添加按钮、文本框、单选按钮、

9、滑块、图片控件。3.设置主要控件属性,如下表所示:4.处理事件:void CImageRota::OnBtLoad() / TODO: Add your control notification handler code hereCFileDialog flDlg(TRUE,,”,OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,”位图文件|*.bmp|”,this);if (flDlg.DoModal()=IDOK)CString csFileName = flDlg.GetPathName();m_SrcFile = flDlg.GetPathName();m_

10、BmpName.SetWindowText(csFileName);if (m_hBmp != NULL)DeleteObject(m_hBmp);m_hBmp = NULL;m_hBmp = (HBITMAP)LoadImage(NULL,csFileName,IMAGE_BITMAP,0,0,LR_LOADFROMFILE);if (m_hBmp)m_Image。SetBitmap(m_hBmp);m_bLoaded = TRUE;CFile file;file。Open(csFileName,CFile:modeRead);file.Read(m_bmFileHeader,sizeof(

11、BITMAPFILEHEADER));file。Read(&m_bmInfoHeader,sizeof(BITMAPINFOHEADER);int szPalette = 0;if (m_bmInfoHeader。biBitCount != 24)file.Close();MessageBox(”请选择真彩色位图!”,提示);return;if (m_bmInfoHeader.biSizeImage = 0)int externWidth;/计算源位图每行使用的字节数externWidth = m_bmInfoHeader.biWidth * 3;if(externWidth % 4 != 0

12、externWidth = 4 externWidth 4;elseexternWidth = 0;m_bmInfoHeader.biSizeImage = m_bmInfoHeader。biHeight*(m_bmInfoHeader。biWidth3 +externWidth);int nBmpData = m_bmInfoHeader.biSizeImage;if (m_pBmpData != NULL)delete m_pBmpData;m_pBmpData = NULL;m_pBmpData = new BYTEnBmpData;file.ReadHuge(m_pBmpData,n

13、BmpData);file。Close();int sizeofbuffer = m_bmInfoHeader.biWidth * m_bmInfoHeader。biHeight * 4;int externWidth;externWidth = m_bmInfoHeader.biWidth 3;if(externWidth 4 != 0)externWidth = 4 - externWidth 4;elseexternWidth = 0;int k = 0;BYTE* m_pImageTempBuffer = new BYTEsizeofbuffer;for (int n = m_bmIn

14、foHeader。biHeight - 1; n = 0; n-) for (UINT m = 0; m GetCheck();if (nState)/预定角度for (int nID = IDC_ROTATE45; nID = IDC_ROTATE270; nID+)pButton = (CButton)GetDlgItem(nID);if (pButton != NULL)nState = pButtonGetCheck();if (nState)CString csText;pButton-GetWindowText(csText);int nPos = csText.Find();nD

15、egree = atoi(csText.Left(nPos));break;else/固定角度UpdateData(FALSE);nDegree = m_nDegree;/确定旋转角度RotationImage(&m_bmInfoHeader,nDegree);BYTE byByteAlign ;/位图行字节对齐UINT outHeight = m_bmInfoHeader.biHeight;UINT outWidth = m_bmInfoHeader。biWidth;BYTE pBmpData = new BYTE m_bmInfoHeader.biSizeImage;memset(pBmp

16、Data,0,m_bmInfoHeader.biSizeImage);BYTE pListData =m_pBmpData+(DWORD)outHeight1)*outWidth*4;if (outWidth 4 != 0) byByteAlign = 4- ((outWidth*3L) 4);elsebyByteAlign = 0;BYTE byZeroData = 0;BYTE* pTmpData = pBmpData;for (int y=0 ;ym_hDC,&m_bmInfoHeader,CBM_INIT,pBmpData,&bInfo,DIB_RGB_COLORS);if (hBmp

17、 != NULL):DeleteObject(hBmp);delete pBmpData;/设置滚动范围CRect bmpRC,wndRC;m_ImagePanel.GetClientRect(wndRC);m_Image。GetClientRect(bmpRC);m_ImagePanel.OnHScroll(SB_LEFT, 1, NULL); m_ImagePanel。OnVScroll(SB_LEFT, 1, NULL); m_ImagePanel.SetScrollRange(SB_VERT,0,bmpRC。Height()wndRC.Height();m_ImagePanel.Set

18、ScrollRange(SB_HORZ,0,bmpRC。Width()wndRC。Width();8.处理保存按钮事件3。3 图像缩放模块设计1.新建一个对话框类,类名为CStretchImage,界面如下:2.向对话框中添加按钮、静态文本、群组框、滑块、复选框、图片等控件.3设置控件属性如下:4处理、缩放、保存按钮事件。3。4 图片水印效果模块设计1.实现水印效果主要代码为:2.创建一个对话框类,类名为CImageWater。3。向对话框中添加按钮、静态文本、群组框、滑块、复选框、图片等控件.界面如下:4设置控件属性如下:5处理、缩放、保存按钮事件。3。5 照片版式处理模块设计1.创建一个对

19、话框类,类名为CPhotoHandle。2.向对话框中添加按钮、静态文本、群组框、滑块、复选框、图片等控件。界面如下:3设置控件属性如下:4.处理、缩放、保存按钮事件。3.5 PSD文件浏览模块设计1.创建一个对话框类,类名为CPsdBrowse。2.向对话框中添加按钮、静态文本、群组框、滑块、复选框、图片等控件。界面如下:3设置控件属性如下:4.处理、缩放、保存按钮事件.4 位图数据的存储形式在进行图像处理时,一个首要的问题是实现对位图数据的直接操作。位图主要由四部分组成,分别为位图文件头、位图信息头、调色板和实际的位图数据如下:,其中,位图文件头对应的结构为BITMAPFILEHEADER,共占用14个字节,定义如下:位图信息头对应的结构为BITMAPINFOHEADER,共占用40个字节,定义如下:5 限制条件1.位图数据每行的字节数必须是4的整数倍。2。位图数据是从下向上存储的。3。对于真彩图来说,每一行数据是按照BRG颜色顺序排列的.6 测试计划进入主界面预期结果点击图片旋转进行操作旋转效果点击图片缩放进行操作缩放效果点击水印效果进行操作水印效果点击照片版式进行操作查看效果点击退出退出程序 15 / 16

展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服