CxImage图像灰度处理简述
2011-06-17 23:25
197 查看
1.
引言
2.
目标功能
2
值、
3
值转换。说白了就是灰度值的转换。
3.
使用
CxImage
原因
VC++
图像处理】这本书之后,发现图像处理方面的东西还是很多的。并根椐这本书所介绍的图像处理知识开始进行代码编写,然而写过
300
行之后发现,需要写的东西越来越多。签于时间短、任务重的原因,只能放弃这条路。
而在此时,
恰好在网上看到
CxImage
的一些简介
,仔细研究了一下它的接口。发现这个类库刚好有我所需要的一些功能,而此类库又是开源的,使用的人非常的多,所以
bug
方面的问题不需要太担心。于是开始使用此类库进行代码编写。
在此,首先要感谢
CxImage
类库的作者
Davide Pizzolato
。
4.
功能实现
的功能非常的强大,而进行灰度处理只需要用到它的两个接口就可以了,即:
Ø
BYTE
GetPixelGray(long
x, long y);
//
获取指定像素的灰度值
Ø
void
SetPixelColor
(long
x
,long
y
,COLORREF
cr
);
//
设置指定像素
的颜色。
4.1.
灰度转换实现流程图
4.2.
核心代码
for
(int
x
=0; x
<mWidth
; x
++)
{
for
(int
y
=0; y
<mHeight
; y
++)
{
BYTE
bGray
= m_pXImage
->GetPixelGray
(x
, y
);
}
}
b 存贮每个像素的原始灰度值
mPointGray
.x
= x
;
mPointGray
.y
= y
;
mPointGray
.gray
= bGray
;
m_vPointGray
.push_back
(mPointGray
);
c原始灰度值与“灰度分割参数”比较,并为图像设置新的灰度值
(
如灰度分割参数为
150)
if
(bGray
> 150
)
{
m_pXImage
->SetPixelColor
(x
,y
,RGB
(255,255,255));
}
else
{
m_pXImage
->SetPixelColor
(x
,y
,RGB
(0,0,0));
}
5.
开发中遇到的问题
BYTE
GetPixelGray(long x, long y);
】
获取灰度值的时候,返回结果中会出现有字符的现像(初步估计:可能是图片中的一些信息)。因为此问题暂不影响图片处理效果,故先放置,等待后续处理。
6.
结束语
3
值转换、
4
值转换等。
再此感谢
CxImage
的作者:
Davide Pizzolato
!
CabinRiver
2011-06-17 23:43:00
相关文章推荐
- CxImage图像灰度处理简述
- Matlab中图像处理实例:灰度变换,空域滤波,频域滤波,傅里叶变换的实现
- 图像滤镜处理算法:灰度、黑白、底片、浮雕
- 双边滤波器在灰度和彩色图像处理中的应用
- 【数字图像处理】五.MFC图像点运算之灰度线性变化、灰度非线性变化、阈值化和均衡化处理具体解释
- 灰度图像--图像分割 阈值处理之谷底阈值、峰顶平均
- 实验四 灰度图像的锐化处理
- 数字图像处理——灰度变换与空间滤波(使用MFC)
- 图像处理------特殊灰度算法技巧 分类: 视频图像处理 2015-07-24 09:53 28人阅读 评论(0) 收藏
- 十全大补:CxImage图像处理类库
- 图像处理库的比较:OpenCV,FreeImage,CImg,CxImage
- 图像处理库的比较:OpenCV,FreeImage,CImg,CxImage
- Android图像处理(三)负片,怀旧,浮雕,灰度,圆角,油画和左右对称
- 图像处理基础(7):图像的灰度变换
- 图像滤镜处理算法:灰度、黑白、底片、浮雕
- 十全大补:CxImage图像处理类库
- [图像处理]图像的灰度变换
- otsu结合OpenCV实现灰度图像自动阈值处理
- OpenCV开发环境搭建-并测试一个图像灰度处理程序
- android中opencv操作图片像素----之图像灰度处理