ImageVerifierCode 换一换
格式:DOCX , 页数:17 ,大小:31.12KB ,
资源ID:10151194      下载积分:8 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/10151194.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(图像处理系统详细设计说明书.docx)为本站上传会员【精***】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

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

1、案卷号 日期 图像处理系统 详细设计说明书 作 者: 完成日期: 2016.8。24 签收人: 签收日期: 修改情况记录: 版本号 修改批准人 修改人 修改日期 签收人 1。0 杨开 2016。8. 23 1.1 杨开 2016。 8. 24 目录 1 弓I言 1。1编写目的1 1。2背景1 1. 3定义2 1. 4参考资料2 2程序系统的结构错误!未定义书签。 3系统登陆设计说明 3。1主窗设计3 3.2图像旋转模块功能设土4 3。3图像缩放模块设计.错.误!未定.义书.签 3. 4图片水印效果模

2、块设计.14 3。5照片版式处理模块设土14 3. 6流程逻辑错误!未定义书签。 4位图数据的存储形式 5限制条件 6测试计划 1引言 1.1编写目的 本详细设计说明书主要目的是对图像管理系统的功能设计进行详尽的说明。 本说明书主要写了图像管理系统功能模块的详细设计,为后来的开发提供依据与参考。 详细设计说明书面向人员有:程序设计人员、数据库设计人员,质量检测人员。 1。2背景 a. 项目名称:图像管理系统 1 / 16 详细设计说明书 b.本项目的任务提出者:西安软件服务外包学院 开发者:YOUNG REGIN GROUP 团队 1。3定义

3、本系统属于开发小型的图像处理软件,主要用于实现图像的显示 与批量转换操作。 实现各种图像格式的显示。 支持图像的单一转换与批量转换。 实现位图的各种常规操作。 1。4参考资料 《C++程序设计》,谭浩强,清华大学出版社; 《Visual C++项目开发案例全程实录》,梁水,李伟明著,清华大学出版社。 2程序系统的结构 图像处理模块 主窗体—►退出系统 打开位图 批量转换与处理 PSD文件管理 照片处理 位 图 图 这® “图 像 〔管位 t 系J统 ” 卧 整 体系 构 图水 P P 水 图

4、像 像 像 像 图 P I 图 图 印 S S 印 转 锐 反 旋 浮 转 E F 转 转 效 D D 效 换 化 色 转 雕 换 G 转 换 换 果 文 文 果 成 处 处 效 成 转 换 成 为 批 件 件 批 G 理 理 果 J 换 成 G P 量

5、浏 批 量 I P 成 位 I N 2 / 1处 览 量 处 F E 位 图 F G =1 理 转 理 — — — — G 图 — — 换 详细设计说明书 3系统整体及模块显示设计说明 3。1主窗设计 在这个系统里,主要实现用户登录进入系统后可以查询和添加相关信息. 工作区菜单代码: m_wndToolBar。 GetToolBa

6、rCtrl ().SetImageList(&m_ImageList); 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。SetButtonT

7、ext( 6, ”位图转换 JPEG"); m_wndToolBar.SetButtonText(7, "JPEG 转换位图”); m_wndToolBar。SetButtonText( 8, ”水印批量处理"); m_wndToolBar.SetButtonText( 9,叩SD 文件浏览"); m_wndToolBar。SetButtonText(10,叩SD 批量转换"); m_wndToolBar。SetButtonText(11,” 照片版式处理"); 设置状态栏,关联图标资源: UINT nID; 〃控制状态栏里面的分栏 m_wndStatusBar。SetPane

8、Info ( 0,nID,SBPS_STRETCH|SBPS_NOBORDERS,1); 〃返回值存nID中 m_wndStatusBar.SetPaneText ( 0, ”就绪"); m_wndStatusBar.SetPaneInfo(1,nID,SBPS_NORMAL,1); m_wndStatusBar。SetPaneText(1,"大写"); m_wndStatusBar。 SetPaneInfo(2, nID,SBPS_POPOUT,1); m_wndStatusBar。SetPaneText (2,"数字"); //加载图像资源 3 / 16 详细设计说明书

9、 m_ImageList.Create(32, 32, ILC_COLOR32 | ILC_MASK, 1, 1); m_ImageList.Add (:: AfxGetApp()-〉LoadIcon(IDI_ICON3)); m_ImageList。Add(: : AfxGetApp()->LoadIcon(IDI_ICON1)); m_ImageList.Add(:: AfxGetApp()->LoadIcon(IDI_ICON2)); m_ImageList.Add (: : AfxGetApp() —>LoadIcon(IDI_ICON4)); m_ImageList.Add

10、 (:: AfxGetApp()—>LoadIcon(IDI_ICON5)); m_ImageList。Add(: : AfxGetApp()—>LoadIcon( IDI_ICON6)); m_ImageList.Add (:: AfxGetApp()—>LoadIcon( IDI_ICON7)); m_ImageList。Add (: :AfxGetApp()-〉LoadIcon(IDI_ICON8)); m_ImageList.Add(:: AfxGetApp() —〉LoadIcon( IDI_ICON9)); m_ImageList。Add (::AfxGetApp()->

11、LoadIcon(IDI_ICON10)); m_ImageList.Add (: : AfxGetApp ()—〉LoadIcon(IDI_ICON11)); m_ImageList.Add (: : AfxGetApp ()-〉LoadIcon(IDI_ICON12)); 3.2图像旋转模块功能设计 1。添加一个对话框类,类名为CImageRota。窗如下: 2。向对话框中添加按钮、文本框、单选按钮、滑块、图片控件。 3. 设置主要控件属性,如下表所示: 4. 处理…事件: void CImageRota: OnBtLoad() { // TODO: Add your

12、control notification handler code here CFileDialog flDlg(TRUE,"" , ” ",OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT ,”位图文件|*.bmp||”,this); if (flDlg.DoModal()==IDOK) ( 4 / 16 详细设计说明书 CString csFileName = flDlg.GetPathN

13、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,s

14、izeofBITMAPFILEHEADER)); file 。 Read(&m_bmInfoHeader , sizeof(BITMAPINFOHEADER)) ; int szPalette = 0; if (m—bmInfoHeadei biBitCount != 24) 5 / 16 详细设计说明书 ( file.Close () MessageBox(”请选择真彩色位图!”,提示”); return; } if (m_bmInfoHeader.biSizeImage == 0) { int externWidth; /计算源位图每行使用的字节数 exter

15、nWidth = m_bmInfoHeader.biWidth ;* 3 if(externWidth % 4 != 0 externWidth = — externWidth% 4; else externWidth = 0; m_bmInfoHeader.biSizeImage = m_bmInfoHeadeibiHeight* (m_bmInfoHeader。 biWidth* 3 +externWidth } int nBmpData = m_bmInfoHeader.biSizeImage; if (m_pBmpData != NULL ) { delete [

16、 ]m_pBmpData; m_pBmpData = NULL; 6 / 16 详细设计说明书 } m_pBmpData = new BYTE [ nBmpData]; file.ReadHug(m_pBmpData , nBmpData ); file Close (); int sizeofbuffer = m_bmInfoHeader.biWidth * m_bmInfoHeaderbiHeight * 4; int externWidth; externWidth = m_bmInfoHeader.biWidth 3; if(externWidtho 4 ! =

17、0) externWidth = 4 - externWidth4; else externWidth = 0; int k =; 0 BYTE* m_pImageTempBuffer = new BYTE[sizeofbuffer; for ( int n = m_bmInfoHeaderbiHeight - 1 n〉= 0; —-) { for (UINT m = 0; m < m_bmInfoHeader.biWidth* 3; m += 3) ( m_pImageTempBuffer [ k ]= m_pBmpData [n*(m_bmInfoHeader。bi

18、Width* 3+externWidt) +m ]; //blue m_pImageTempBuffer[k+1]= 7 / 16 详细设计说明书 m_pBmpData[n*(m_bmInfoHeader。 biWidth*3+externWidth)+m+1] ;//green m_pImageTempBuffer [ k+2 ] = m_pBmpData [ n *(m-bmInfoHeader.biWidtlh 3+externWidth)+m+2]; //red m_pImageTempBuffer [ k+3 ] = 255; k += 4; } } delet

19、e []m_pBmpData; m_pBmpData = new BYTE[sizeofbuffer]; memcpy(m_pBmpData, m_pImageTempBuffer, sizeofbuffer); delete [] m_pImageTempBuffer ; /设置滚动范围 CRect bmpRC,wndRC ; m_ImagePanel.GetClientRect(wndRC)/获取面板的 客户区域 m_Image。GetClientRect bmpRC );/获取图片空间 的客户区域 m_ImagePanel.OnHScroll(SB_LEFT ,1,

20、NULL); m_ImagePanel.OnVScroll(SB_LEFT, 1, NULL ); m_ImagePanel.SetScrollRange(SB_VERT,0,bmpRC。Height 0—wndRC.Height()); 8 / 16 详细设计说明书 m_ImagePanel.SetScrollRange(SB_HORZ , 0,bmpRC 。 Width()—wndRC。Width()) } } 5. 向对话框中添加RotateBmp方法,按指定的角度旋转。 6. 向对话框中添加Rotationimage方法,并调用RotateBmp方法处理图像。 7

21、 处理旋转按钮事件 void CImageRota :OnBtRotate() { // TODO: Add your control notification handler code here if (m—bLoaded) ( /确定旋转方式 CButton *pButton =(CButton *)GetDlgItem(IDC—FIXDEGREE ); int nState = 0 int nDegree = 0; if (pButton = NULL ) { nState = pButt—>GetCheck (); 9 / 16 详细设计说明书 if

22、nState)/预定角度 ( for (int nID = IDC_ROTATE45; nID <= IDC_ROTATE27QnID++ ) ( pButton = (CButton)GetDlgItem(nID) if (pButton ! = NULL) ( nState = pButt—n〉GetCheck(); if (nState) { CString csText; pButton〉GetWindowText ( csText); int nPos = csText.Find"); nDegree = atoi(csText. (eftos)); b

23、reak } } } } else/固定角度 { 1Q / 16 详细设计说明书 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

24、biSizeImage]; memset(pBmpData,O,m_bmInfoHeader.biSizeImag)s; BYTE*pListData =m_pBmpData+ ((DWORD)outHeight —1) *outWidth*4; if (outWidth %4 != 0) byByteAlign = 4-(6utWidth*3L) % 4); else byByteAlign = 0; BYTE byZeroData = 0; BYTE* pTmpData = pBmpData; for (int y=0 ;y

25、int x=0;XoutWidth;x++) 11 / 16 详细设计说明书 memcpy (pTmpData,pListData 3); pTmpData += 3; pListData +=;4 } for (int i=0i〈byByteAlign i++) ( memcpy(pTmpData, &byZeroData, 1); pTmpData =pTmpData + 1; } pListData -= 2LoutWidth*4; } CDC *pDC = m_Image.GetDC(); BITMAPINFO bInfo ; bInfo.bmiHead

26、er = m_bmInfoHeader; HBITMAP hBmp = m_Image 。 SetBitmap ( CreateDIBitmap (pDC->m_hDC,&m_bmInfoHeader, CBM_INIT,pBmpData,&bInfo,DIB_RGB_COLORS )); if (hBmp != NULL) ( ::DeleteObje(thBmp ); 12 / 16 详细设计说明书 delete [] pBmpData; /设置滚动范围 CRect bmpRC,wndRC ; m_ImagePanel.GetClientRectwndRC );

27、m_Image 。 GetClientRectbmpRC); m_ImagePanel.OnHScroll(SB_LEFT, 1 NULL ); m_ImagePanel。OnVScroll(SB_LEFT, 1, NULL); m_ImagePanel.SetScrollRan(eSB_VERT,0 , bmpRC。Height)—wndRC.Height()); m_ImagePanel.SetScrollRan(eSB_HORZ , 0,bmpRC。Width()—wndRC。Width ()); } } 8. 处理保存按钮事件 3。3图像缩放模块设计 1. 新建一个对

28、话框类,类名为CStretchImage界面如下: 2. 向对话框中添加按钮、静态文本、群组框、滑块、复选框、图片等控件. 3. 设置控件属性如下: 4. 处理…、缩放、保存按钮事件。 13 / 16 详细设计说明书 3。4图片水印效果模块设计 1. 实现水印效果主要代码为: 2. 创建一个对话框类,类名为CImageWater。 3. 向对话框中添加按钮、静态文本、群组框、滑块、复选框、图片等控件.界面如下: 4. 设置控件属性如下: 5. 处理…、缩放、保存按钮事件。 3。5照片版式处理模块设计 1. 创建一个对话框类,类名为CPhotoHandle。 2. 向

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

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

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

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

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

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

关注我们 :微信公众号    抖音    微博    LOFTER 

客服