VC++实验报告书

合集下载

维生素c实验报告

维生素c实验报告

维生素c实验报告维生素C实验报告维生素C是一种重要的营养素,对人体健康起着重要的作用。

为了深入了解维生素C的特性以及其在不同环境条件下的稳定性,我们进行了一系列实验。

实验一:维生素C的含量测定我们首先测定了某品牌橙子中维生素C的含量。

实验步骤如下:1. 将橙子切开,挤取橙汁。

2. 取一定量的橙汁,加入已知浓度的碘液。

3. 碘液会与维生素C发生反应,产生蓝色的混合物。

4. 通过比色法,测定蓝色混合物的吸光度,从而计算出维生素C的含量。

实验结果显示,每100毫升橙汁中含有约30毫克的维生素C。

这个结果与维生素C的日常摄入量推荐值相符,说明橙汁是一种良好的维生素C来源。

实验二:维生素C的稳定性为了探究维生素C在不同环境条件下的稳定性,我们进行了一系列实验。

实验一:光照条件下的稳定性我们将维生素C溶液分别暴露在不同光照条件下,包括强光、弱光和黑暗。

经过一段时间后,我们测定了维生素C溶液中维生素C的含量。

实验结果显示,强光条件下,维生素C的含量显著降低,损失约30%;弱光条件下,维生素C的损失约为10%;而在黑暗条件下,维生素C的损失非常小。

这表明,光照是维生素C降解的主要因素之一,因此在保存维生素C时,应尽量避免阳光直射。

实验二:温度条件下的稳定性我们将维生素C溶液分别置于不同温度下,包括常温、冷藏和冷冻。

经过一段时间后,我们测定了维生素C溶液中维生素C的含量。

实验结果显示,常温条件下,维生素C的含量损失最快,损失约为50%;冷藏条件下,维生素C的损失约为20%;而在冷冻条件下,维生素C的损失非常小。

这表明,温度也是维生素C降解的重要因素之一,因此在保存维生素C时,应尽量将其冷藏或冷冻。

综合实验结果,我们可以得出以下结论:1. 橙汁是一种良好的维生素C来源,每100毫升橙汁中含有约30毫克的维生素C。

2. 光照是维生素C降解的主要因素之一,应避免阳光直射。

3. 温度也是维生素C降解的重要因素之一,应将其冷藏或冷冻以延缓维生素C的损失。

维生素c含量测定实验报告

维生素c含量测定实验报告

维生素c含量测定实验报告维生素C是一种重要的水溶性维生素,也被称为抗坏血酸。

它在许多生物体中起着重要的抗氧化作用,对人体健康起着至关重要的作用。

为了了解维生素C在常见食物中的含量,我们进行了一次测定实验。

实验目的:通过化学实验,准确测定某食物中的维生素C含量,了解其在日常饮食中的重要性。

实验材料与仪器:- 柠檬- 维生素C标准溶液- 碘液- 淀粉溶液- 酒精棉球- 滴定管- 三角瓶- 称量瓶- 果汁机- 磨杯- 磁力搅拌器实验步骤:1. 准备工作:收集所需材料和仪器,并确保其干净无菌。

2. 标定维生素C标准溶液:称取适量维生素C标准溶液,加入三角瓶中,用滴定管滴定碘液直至颜色变化,记录滴定量。

3. 提取食物中的维生素C:将柠檬榨汁机榨汁,将所得橙汁倒入磨杯中。

4. 确定维生素C含量:取一定量橙汁,加入适量淀粉溶液,用磁力搅拌器搅拌均匀。

然后向中加入维生素C标准溶液,直至溶液颜色变化为无色,记录滴定量。

5. 测定维生素C浓度:根据维生素C标准溶液的滴定量和橙汁中的滴定量计算维生素C的浓度。

实验结果与分析:经过实验测定,我们得到了某食物中维生素C的含量。

通过计算,我们发现柠檬中的维生素C含量为xx mg/ml。

通过参考食物营养成分表,我们还可以将这一含量转化为每100g柠檬中的维生素C含量,为xx mg。

结论:通过测定实验,我们得出了柠檬中维生素C的含量。

维生素C 作为一种重要的营养素,对人体健康至关重要。

合理摄入维生素C可以增强抵抗力、改善免疫功能,并在一定程度上对抵抗慢性病有帮助。

因此,我们应该保持均衡饮食,充分摄入富含维生素C的食物,以维持身体健康。

实验中可能存在的误差:1. 实验条件的限制可能导致实验结果的误差。

2. 实验操作中的不准确可能导致实验结果的误差。

3. 食物中的维生素C含量因原材料的不同而有差异。

改进方案:1. 增加多组样本的测定,以提高实验结果的可靠性。

2. 使用更精确的仪器和设备,以减小实验误差。

vc含量的测定实验报告

vc含量的测定实验报告

vc含量的测定实验报告VC含量的测定实验报告一、引言维生素C(VC)是一种重要的营养成分,对人体健康具有重要作用。

为了了解食物中VC的含量,我们进行了一系列实验,以测定VC的含量。

二、实验目的本实验的目的是通过滴定法测定某种食物中VC的含量,并比较不同样品的VC 含量差异。

三、实验原理滴定法是常用的测定VC含量的方法之一。

该方法基于VC与氧化剂溴酸钾(KBrO3)在酸性条件下发生氧化反应,反应终点用淀粉溶液作指示剂。

VC的含量可以通过滴定溶液中的溴酸钾溶液的消耗量来计算。

四、实验步骤1. 准备工作:将所需的实验器材和试剂准备齐全,包括滴定管、量筒、烧杯、移液管、滴定管架等。

2. 样品制备:将不同食物样品(如柑橘类水果、蔬菜等)按照一定比例榨汁,并过滤得到澄清的样品液。

3. 滴定操作:取一定量的样品液放入烧杯中,加入适量的硫酸溶液,使其酸性达到适宜的范围。

然后加入淀粉溶液作为指示剂,并开始滴定溴酸钾溶液。

4. 滴定终点判定:溴酸钾溶液滴加至溶液变色,从无色变为略带蓝色时,即为滴定终点。

记录滴定消耗的溴酸钾溶液体积。

5. 数据处理:根据滴定消耗的溴酸钾溶液体积,计算出样品中VC的含量。

五、实验结果与分析通过实验测定,我们得到了不同食物样品中VC的含量数据。

根据实验结果,我们可以看出不同食物样品中VC的含量存在差异。

柑橘类水果中VC的含量较高,而蔬菜中VC的含量相对较低。

这与我们的预期相符,因为柑橘类水果被广泛认为是VC的丰富来源。

六、误差分析在实验过程中,可能存在一些误差,例如:1. 滴定时淀粉溶液的加入量不准确,导致滴定终点判定不准确。

2. 样品制备过程中的污染或损失,导致实际测定的VC含量与样品中的真实含量有所偏差。

3. 滴定过程中操作不规范,如溴酸钾溶液滴加过快或过慢,也会影响结果的准确性。

七、实验总结本实验通过滴定法测定了某种食物样品中VC的含量,并比较了不同样品的VC 含量差异。

实验结果表明,柑橘类水果中VC的含量较高,而蔬菜中VC的含量相对较低。

维生素c的含量测定实验报告

维生素c的含量测定实验报告

维生素c的含量测定实验报告目录1. 引言1.1 背景介绍1.2 研究意义2. 实验目的2.1 测定维生素C的含量2.2 探讨维生素C在不同条件下的稳定性3. 实验方法3.1 材料准备3.2 实验步骤4. 实验结果4.1 维生素C含量测定结果4.2 维生素C稳定性实验结果5. 实验讨论5.1 数据分析5.2 结果解释6. 结论6.1 实验总结6.2 可能存在的不确定因素7. 参考文献1. 引言1.1 背景介绍维生素C,又称抗坏血酸,是人体所需的一种重要维生素。

它具有抗氧化、促进铁吸收、帮助伤口愈合等作用。

缺乏维生素C会导致坏血病等疾病的发生。

1.2 研究意义本实验旨在测定某种样品中维生素C的含量,并探讨在不同条件下维生素C的稳定性,为保健品生产和储存提供理论依据。

2. 实验目的2.1 测定维生素C的含量通过化学方法测定样品中维生素C的含量,并计算出其浓度。

2.2 探讨维生素C在不同条件下的稳定性通过将样品置于不同环境条件下,观察其维生素C含量变化,探讨维生素C的稳定性。

3. 实验方法3.1 材料准备- 维生素C样品- 硫酸溶液- 碘标准溶液- 淀粉指示剂- 还原糖溶液3.2 实验步骤1. 样品预处理:将样品加入硫酸溶液中,使其还原。

2. 碘量定法测定维生素C含量:加入碘标准溶液,加入淀粉指示剂,滴加还原糖溶液,测定所需体积。

3. 不同条件下维生素C稳定性实验:将样品放置于不同温度和湿度条件下,定期测定其维生素C含量。

4. 实验结果4.1 维生素C含量测定结果样品A维生素C含量为XXmg/kg,样品B维生素C含量为YYmg/kg。

4.2 维生素C稳定性实验结果在高温高湿条件下,维生素C含量降低速度较快;在低温条件下,维生素C相对稳定。

5. 实验讨论5.1 数据分析实验结果表明样品B的维生素C含量高于样品A,可能是因为……5.2 结果解释维生素C的稳定性受环境条件的影响较大,需要在生产和储存过程中注意控制温湿度等因素。

维生素c测定实验报告

维生素c测定实验报告

维生素c测定实验报告
实验报告:维生素C测定
实验目的:
本实验通过红外分光光度法测定柠檬中的维生素C含量,掌握红外分光光度法的测量方法和数据处理方法。

实验原理:
当前维生素C的测定方法主要有三种:化学法、生物法和物理法。

本实验采用红外分光光度法测定柠檬中的维生素C含量。

该方法是利用维生素C在波长范围为2500-4000nm处的特殊吸收性质,通过分光光度计测定吸收的光强度与样品中维生素C的含量成正比关系,从而测定维生素C的含量。

实验仪器和试剂:
1. 分光光度计
2. 量瓶、移液管等常规实验器材
3. 柠檬
实验步骤:
1. 取适量柠檬制成柠檬汁,用水稀释至50ml,称取10ml置于25ml比色管中;
2. 在另外一只25ml比色管中取维生素C标准品0.008mg/ml,用适量水稀释至10ml;
3. 把样品管、标准品管放入分光光度计中,调节红外光谱扫描波长范围为2500-4000nm,以打开比色管内的红外光源,记录240个数据点的红外分光光度曲线;
4. 用标准品计算红外分光光度法中维生素C的摩尔吸光系数;
5. 计算柠檬中维生素C的含量。

实验结果:
1. 标准品的红外分光光度法数据如下:
浓度(mg/ml) 吸收值
0.008 0.15
2. 柠檬汁的红外分光光度曲线与标准品类似,其摩尔吸光系数为0.051mg/L。

3. 计算得柠檬中维生素C的含量为0.85mg/100ml。

实验结论:
通过红外分光光度法,测定柠檬中维生素C的含量为0.85mg/100ml。

VC++实验报告(10份)

VC++实验报告(10份)

计算机程序设计基础(C++)实验报告计算机基础教育中心二O一一年十月实验__1__实验报告教学班级: 1 学生学号:学生姓名:实验日期:___________ 实验地点:(机房) 指导教师签名:__________ 实验成绩:___________一、实验目的1.熟悉Visual studio 6.0集成开发环境;2.学习新建和打开控制台应用程序的方法;3.通过运行示例程序了解程序开发过程;二、实验任务1.输出下面图形:############2.输入一摄氏温度,输出显示所转换的华氏温度。

(提示:摄氏温度=(华氏温度-32)×5/9)三、实验结果(源程序+ 注释)1.#include<iostream>//预编译命令using namespace std;//using 命令void main()//主函数名{//表示函数开头cout<<"####"<<endl;//函数体cout<<"####"<<endl;cout<<"####"<<endl;}2.#include<iostream>//预编译命令using namespace std;// using 命令int main()//主函数名{//表示函数开头double celsius=0;//定义double型变量cout<<"please input the celsius:"<<endl;//提示输入摄氏度cin>>celsius;//输入摄氏度double fahrenheit=(9.0/5)*celsius+32;//定义华氏度与摄氏度转换公式cout<<celsius<<"changed to the fahrenheit is:"<<fahrenheit<<endl;//由计算摄氏度计算出华氏度return 0;}实验__2__实验报告教学班级:_______ 学生学号:__________ 学生姓名:___________ 实验日期:___________ 实验地点:_________(机房)指导教师签名:__________ 实验成绩:___________一、实验目的1.掌握“处理某一或某些操作只有在特定条件成立的情况下才会被执行”的编程思路和方法;2.掌握“一路分支选择结构”算法的实现语句,if语句的使用方法;3.掌握“二路分支选择结构”算法的实现语句,if-else语句的使用方法;二、实验任务1. 输入a,b,c,d四个整数,输出其中的最大数。

维生素实验报告

维生素实验报告

维生素实验报告维生素实验报告实验名称:不同果蔬中维生素C的含量比较目的:比较不同果蔬中维生素C的含量,探究不同条件下果蔬中的维生素C含量差异。

实验原理:维生素C是一种重要的水溶性维生素,对人体有很多益处。

而且,维生素C在不同果蔬中的含量差异很大,所以,我们需要测量不同果蔬中维生素C含量的高低。

在实验中,我们采用了滴定法,通过反应维生素C和含碘量为0.1M的碘液的反应,来确定含有维生素C的果蔬的维生素C 含量。

实验材料:- 高碘酸钾溶液(0.1M)- 淀粉溶液- 柠檬汁、橙汁、苹果汁、西红柿汁和胡萝卜汁- 磺酸(稀硫酸)实验步骤:1. 分别将柠檬汁、橙汁、苹果汁、西红柿汁和胡萝卜汁取出一定量备用。

2. 取10 mL果蔬汁放入锥形瓶中。

3. 加入10 mL高碘酸钾溶液,混合均匀。

4. 加入2 mL稀硫酸,继续混合。

5. 用高碘酸钾溶液进行滴定,直到液体颜色变为浅黄色。

6. 加入2-3滴淀粉溶液作指示剂,液体变为蓝黑色。

7. 继续滴定,直到液体变为无色。

8. 记录滴定过程中添加的高碘酸钾溶液的体积。

实验结果:实验中,柠檬汁使用了16 mL高碘酸钾溶液,橙汁使用了18 mL高碘酸钾溶液,苹果汁使用了13 mL高碘酸钾溶液,西红柿汁使用了10 mL高碘酸钾溶液,胡萝卜汁使用了25 mL高碘酸钾溶液。

实验分析:结果显示,含有维生素C的果蔬的维生素C含量是不同的。

以滴定过程中添加的高碘酸钾溶液的体积为指标,柠檬汁中的维生素C含量最高,胡萝卜汁中的维生素C含量最低。

这是因为不同果蔬中的维生素C含量受其种类、保存方式、加工过程等因素的影响。

柠檬汁中的维生素C含量较高,可能因为柠檬本身就富含维生素C,而且柠檬通常是新鲜食用,维生素C的损失较少。

而胡萝卜汁中的维生素C含量较低,可能因为胡萝卜通常被加工成汁时,维生素C会在加工过程中被破坏或氧化。

结论:通过比较不同果蔬中维生素C的含量,我们发现柠檬汁中的维生素C含量最高,胡萝卜汁中的维生素C含量最低。

(完整版)可视化(VC)实验报告

(完整版)可视化(VC)实验报告

学生学号实验课成绩学生实验报告书实验课程名称可视化编程(VC)开课学院计算机科学与技术学院指导教师姓名岑丽学生姓名学生专业班级2013-- 2014学年第 2 学期实验课程名称:_可视化编程(VC)第三部分结果与讨论(可加页)一、实验结果分析(包括数据处理、实验现象分析、影响因素讨论、综合分析和结论等)二、小结、建议及体会实验结果:体会:主要学习了Windows编程的基础知识,包括窗口的概念、事件驱动的基本概念等,同样详细介绍了Windows编程中经常用到的“消息”以及对“消息”的响应,在此基础上又学习了Windows程序的结构框架。

实验课程名称:_可视化编程(VC)第三部分结果与讨论(可加页)一、实验结果分析(包括数据处理、实验现象分析、影响因素讨论、综合分析和结论等)二、小结、建议及体会运行结果:体会:进一步学习到了图形设备接口的基本概念以及Windows应用程序中绘图的主要步骤,同时也学习到了绘图函数的应用。

在WM_PAINT消息处理程序中,将映像模式设置为MW_ANISO_TROPIC,同时设置视口和窗口范围,以及视口原点,这样做是为了使得逻辑坐标的原点移动到窗口的中央位置,便于处理后面的坐标。

实验课程名称:_可视化编程(VC)第三部分结果与讨论(可加页)一、实验结果分析(包括数据处理、实验现象分析、影响因素讨论、综合分析和结论等)二、小结、建议及体会运行结果:体会:Windows应用程序中常见的键盘及鼠标的操作及其编程方法和对鼠标操作的响应,是Windows编程中非常重要的组成部分。

在用户与计算机的交互过程中,除鼠标之外,键盘的操作也是非常重要的,大量的信息是通过键盘输入的。

实验课程名称:_可视化编程(VC)第三部分结果与讨论(可加页)一、实验结果分析(包括数据处理、实验现象分析、影响因素讨论、综合分析和结论等)二、小结、建议及体会运行结果:体会:VisualC++的另一种编程方法是利用MFC和向导来编写Windows应用程序。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、设计方案及功能描述图像平滑往往使图像中的边界、轮廓变的模糊,为了减少这类不利效果的影响,这就需要利用图像鋭化技术,使图像的边缘变的清晰。

图像銳化处理的目的是为了使图像的边缘、轮廓线以及图像的细节变的清晰,经过平滑的图像变得模糊的根本原因是因为图像受到了平均或积分运算,因此可以对其进行逆运算(如微分运算)就可以使图像变的清晰。

对图像f(x,y),在点(x,y)处的梯是一个矢量G=[f(x,y)]=[∂f∂x ,∂f ∂y]梯度的方向在函数f(x,y)最大变化率的方向上,梯度的幅度G M[ f(x,y)]可由下式给出:G M[ f(x,y)]=(∂f∂x )2+(∂f∂y)2由上式可知,梯度的数值是f(x,y)在其最大变化率的方向上的单位距离所增加的量。

对数字图像,微分∂f∂x 和∂f∂y可用差分近似。

差分运算近似后的梯度表达式为G M[ f(x,y)]=f x,y−f(x+1,y)2+f x,y−f(x,y+1)2对于图像f(x,y),上式的计算量很大,因此在实际计算中常用绝对值代替平方和平方根运算,梯度模值近似为运用双方向一次微分运算,算出梯度后用梯度值替代该点的灰度值。

在图像的最后一行或最后一列无法计算像素梯度时,一般用前一行或前一列的梯度值近似代替。

为了在不破坏图像背景的前提下更好地增强边缘,也可以对上述直接用梯度值代替灰度值的方法进行改进,即利用门限判断梯度锐化方法。

具体公式如下:G M[ f(x,y)]= G M f x,y+100, G M[ f(x,y)]≥Tf x,y,其他对于图像而言,物体与物体之间,背景和背景之间的梯度变化一般很小,灰度变化较大的地方一般集中在图像的边缘上,也就是物体和背景交界的地方,当设定一个合适的阈值T,G M[ f(x,y)]大于等于T就认为该像素点处于图像的边缘,对梯度值加上100,以使边缘变亮,而对于G M[ f(x,y)]小于T就认为像素点是同类像素点。

这样就增加了物体的边界,又同时保留了图像的背景的原来的状态。

二、实验步骤步骤一、建立一个单文档的应用项目。

步骤二、在“图像处理”菜单栏中新建“显示原图像”子菜单项、“图像的梯度锐化”子菜单项和“显示锐化后的图像”子菜单项。

步骤三、添加“显示原图像”、“图像的梯度锐化”和“显示锐化后的图像”的响应函数。

步骤四、在相应的响应函数中添加实现的能代码。

步骤五、调试,运行。

具体实现步骤如下:1.建立单文档工程ZSG(1)进入vc集成开发环境,单击File菜单下的new,出现一个对话框,在对话框中选择Project项目,选中MFC AppWinzid (exe),并填写好项目名称,存储路径,点击OK.进入下一步,在出现的页面中选择当文档模式(Single document),单击完成(Finish),即可。

如下图:图1(2)单击Build菜单下的ZSG.exe(或单击工具栏中的! )编译一下刚才建立的项目。

即可看到一个如下图2的windows 风格窗口。

图22.添加CDIB类(1)将dib.cpp和dib.h文件拷贝到工程目录下。

(2)打开工程空间(双击刚才建立的目录下的ZSGt.dsw) 。

单击在编译窗口中的Project→Add To Project→Files,在弹出的对话框中选择Dib.cpp和Dib.h。

单击确定,如图3所示。

图33、建立菜单项(1)点击ResouceView。

双击资源中的MEUM->IDC_MAINFRAME。

在编辑框中将看到主框架的菜单资源,如图4。

图4(2)在菜单资源中,添加菜单栏和菜单项。

双击其中的一个空白菜单栏,即进入其属性框,可添加或修改其名称,这里将其命名为“图像处理”,如图5。

图5(3)在“图像处理”中添加菜单项―“显示原图像”,并将其ID标识为ID_OPEN_PHOTO,如图6。

图6(4)在“图像处理”中添加菜单项―“显示锐化后的图像”,并将其ID标识为ID_SHAREN_PHOTO,如图7。

图74、添加CZSGView的公共成员函数CDib m_PhotoImage。

双击ZSGView.h在public里添加CDib m_PhotoImage; B OOL flag;语句,并添加头文件#include "Dib.h",#include "SharpenProcessDib.h"。

如图8图85、添加响应函数(1)右击编辑框中的任意位置,在弹出的提示菜单中,选择ClassWizard,在弹出的类向导对话框中,在Class name选择CZSGView,同时在Object IDS中选ID_OPEN_PHOTO,然后选择COMMAND,点击ADD FUNCTION,之后点击EDIT CODE。

如图9。

图9(3)按照上述的方法添加ID_SHAREN_PHOTO的类向导,如图10。

图106.添加代码(1)在CZSGView::OnOpenPhoto()函数中添加实现显示原图像的代码,添加的代码如下:// 本函数功能是打开并显示照片图像CString filename;CFileDialogdlg(TRUE,_T("BMP"),_T("*.BMP"),OFN_HIDEREADONLY|OFN_OVERWRITEPROMP T,_T("位图文件(*.BMP)|*.BMP|"));if(IDOK==dlg.DoModal())filename.Format ("%s",dlg.GetPathName() );m_PhotoImage.LoadFromFile(filename);//打开照片图像flag=TRUE;//照片图像打开后,将标记变量置为真//显示图像CPoint point;CSize size;point.x=0;point.y=0;LONG lWidth=m_PhotoImage.GetWidth(); //获得灰度图像的宽度LONG lHeight=m_PhotoImage.GetHeight(); //获得灰度图像的高度size.cx= lWidth ;size.cy= lHeight;CDC *pDC=GetDC();m_PhotoImage.Draw(pDC,point,size);(2)在CZSGView::OnSharenPhoto()函数中添加实现图像梯度锐化和显示的代码,添加的代码如下://门限梯度锐化的算法// 函数功能:门限梯度锐化处理函数// 输入参数:BYTE t -门限值BOOL CSharpenProcessDib::GateGrad(BYTE t){LPBYTE lpNewDIBBits; // 指向缓存DIB图像的指针HLOCAL hNewDIBBits;long i,j; //循环变量BYTE temp; //暂存双向一次微分结果LPBYTE lpDIBBits=m_pDib->GetData();//找到原图像的起始位置LONG lWidth=m_pDib->GetWidth(); //获得原图像的宽度LONG lHeight=m_pDib->GetHeight(); //获得原图像的高度// 暂时分配内存,以保存新图像hNewDIBBits = LocalAlloc(LHND, lWidth * lHeight);if (hNewDIBBits == NULL){return FALSE;}lpNewDIBBits = (LPBYTE )LocalLock(hNewDIBBits);// 初始化新分配的内存,设定初始值为0memset(lpNewDIBBits, (BYTE)0, lWidth * lHeight);//逐个扫描图像中的像素点,进行门限梯度锐化处理for(j=1;j<lHeight-1;j++){for(i=1;i<lWidth-1;i++){//根据双向一次微分公式计算当前像素的灰度值temp=(BYTE)sqrt((float)((lpDIBBits[lWidth*j+i]-lpDIBBits[lWidth*j+(i-1)])*(lpDIBBits[lW idth*j+i]-lpDIBBits[lWidth*j+(i-1)])+(lpDIBBits[lWidth*j+i]-lpDIBBits[lWidth*(j-1)+i])*(lpDIBBits[lWidth*j+i]-lpDIBBits[lWi dth*(j-1)+i])));if (temp>=t){if((temp+100)>255)lpNewDIBBits[lWidth*j+i]=255;elselpNewDIBBits[lWidth*j+i]=temp+100;}if (temp<t)lpNewDIBBits[lWidth*j+i]=lpDIBBits[lWidth*j+i];}}// 复制变换后的图像memcpy(lpDIBBits, lpNewDIBBits, lWidth * lHeight);//释放内存LocalUnlock(hNewDIBBits);LocalFree(hNewDIBBits);return TRUE;}// 此函数实现门限梯度锐化处理//如果之前没加载图像,将在这里提示if(flag==FALSE){AfxMessageBox("请先加载要处理的照片图像!");return;}CPoint point;CSize size;point.x=0;point.y=0;LONG lWidth=m_PhotoImage.GetWidth(); //获得灰度图像的宽度LONG lHeight=m_PhotoImage.GetHeight(); //获得灰度图像的高度size.cx= lWidth ;size.cy= lHeight;CDC *pDC=GetDC();m_PhotoImage.Draw(pDC,point,size);//绘制处理前的图像CSharpenProcessDib Sharpen(&m_PhotoImage);//创建一个CSharpenProcessDib对象BYTE t=30;Sharpen.GateGrad(t); //调用门限梯度锐化处理函数CPoint point1;point1.x=lWidth+20; //+20是为了让两个图像显示时有个间隙point1.y=0;m_PhotoImage.Draw(pDC,point1,size);//绘制处理后的图像7、编译运行点击快捷键!编译运行刚才的代码,如果没有出错则可单击“图像处理”――》“显示原图像”和“显示锐化后的图像”,选择图像打开,有错则对图从第一部分重新新一步一步调试。

相关文档
最新文档