随笔:0 文章:14 评论:7 引用:0
bobokids
放大自己
C++博客
首页
发新随笔
发新文章
联系
聚合
管理
灰度拉伸
*
函数名称:
*
GrayStrech()
*
*
参数:
*
LPSTR lpDIBBits
-
指向原DIB图像的指针
*
LONG lWidth
-
原图像的宽度(像素)
*
LONG lHeight
-
原图像的高度(像素)
*
BYTE bX1
-
灰度拉伸第一个点的X坐标
*
BYTE bY1
-
灰度拉伸第一个点的Y坐标
*
BYTE bX2
-
灰度拉伸第二个点的X坐标
*
BYTE bY2
-
灰度拉伸第二个点的Y坐标
*
*
返回值:
*
BOOL
-
成功则返回TRUE,否则返回FALSE
*
*
说明:
*
该函数用来对图像进行灰度拉伸,改善输出图像
*
*************************************************************************/
BOOL WINAPI GrayStrech(LPSTR lpDIBBits,LONG lWidth,LONG lHeight,BYTE bX1,
BYTE bY1,BYTE bX2,BYTE bY2)
{
unsigned
char
*
lpSrc;
//
指向原图像的指针
LONG i,j;
//
循环变量
BYTE bMap[
256
];
//
灰度映射表
LONG lLineBytes;
//
图像每行的字节数
lLineBytes
=
WIDTHBYTES(lWidth
*
8
);
//
计算图像每行的字节数
//
计算灰度映射表
for
(i
=
0
;i
<=
bX1;i
++
)
{
//
判断bX1是否大于0(防止分母为0)
if
(bX1
>
0
)
{
//
线性变换
bMap[i]
=
(BYTE) bY1
*
i
/
bX1;
}
else
{
//
直接置0
bMap[i]
=
0
;
}
}
for
(;i
<=
bX2;i
++
)
{
//
判断bX1是否等于bX2(防止分母为0)
if
(bX2
!=
bX1)
{
//
线性变换
bMap[i]
=
bY1
+
(BYTE)((bY2
-
bY1)
*
(i
-
bX1)
/
(bX2
-
bX1));
}
else
{
//
直接置为bY1
bMap[
1
]
=
bY1;
}
}
for
(;i
<
256
;i
++
)
{
//
判断bX2是否等于255(防止分母为0)
if
(bX2
!=
255
)
{
//
线性变换
bMap[i]
=
bY2
+
(BYTE)((
255
-
bY2)
*
(i
-
bX2)
/
(
255
-
bX2));
}
else
{
//
直接置为255
bMap[i]
=
255
;
}
}
//
每行
for
(i
=
0
;i
<
lHeight;i
++
)
{
//
每列
for
(j
=
0
;j
<
lWidth;j
++
)
{
//
指向DIB第i行第j个像素 指针
lpSrc
=
(unsigned
char
*
)lpDIBBits
+
lLineBytes
*
(lHeight
-
1
-
i)
+
j;
//
计算新的灰度值
*
lpSrc
=
bMap[
*
lpSrc];
}
}
return
TRUE;
}
发表于 2008-09-28 03:31
晾衣竿
阅读(1221)
评论(0)
编辑
收藏
引用
所属分类:
图像处理算法基础
只有注册用户
登录
后才能发表评论。
【推荐】100%开源!大型工业跨平台软件C++源码提供,建模,组态!
相关文章:
滤波器类
灰度拉伸
直方图均衡子函数
图象的平滑(去噪声)、锐化
图象的几何变换
位图和调色板的概念
对比度扩展
灰度直方图均衡化
网站导航:
博客园
IT新闻
BlogJava
博问
Chat2DB
管理
常用链接
我的随笔
我的评论
我参与的随笔
留言簿
给我留言
查看公开留言
查看私人留言
文章分类
(12)
常用数学算法(1)
(rss)
机器视觉应用
(rss)
图像处理算法基础(8)
(rss)
图形识别(2)
(rss)
应用软件(1)
(rss)
文章档案
(14)
2008年9月 (14)
搜索
最新评论
1. re: 腐蚀,膨胀,细化算法
细化的代码根本就没法编译,一堆编译错误啊
--啊
2. re: 腐蚀,膨胀,细化算法
赞
--广泛的身高
3. re: 腐蚀,膨胀,细化算法
图6.10服饰结果图错误?坐下应该三列黑点
--jia66wei
4. re: 腐蚀,膨胀,细化算法
非常感谢!
--myjerry
5. re: 腐蚀,膨胀,细化算法
非常好哦,很详细
--jiashu
Powered By:
博客园
模板提供
:
沪江博客