社区
机器视觉
帖子详情
高分求锐化图像原码,c语言版,分不够再加
cyberarmao
2002-11-20 11:49:48
我才开始学图像处理,希望各位多帮忙!
...全文
106
6
打赏
收藏
高分求锐化图像原码,c语言版,分不够再加
我才开始学图像处理,希望各位多帮忙!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
tsingmei
2002-11-22
打赏
举报
回复
上面的代码全是人民邮电出版社的《VC++数字图象处理》光盘里面的。
你要找我好了!我有的是。
duwenyong
2002-11-22
打赏
举报
回复
http://member.netease.com/~inetsoft/downloads/sourcecode/graph/index.htm
changzhiguo
2002-11-20
打赏
举报
回复
/*************************************************************************
*
* 函数名称:
* GradSharp()
*
* 参数:
* LPSTR lpDIBBits - 指向源DIB图像指针
* LONG lWidth - 源图像宽度(象素数)
* LONG lHeight - 源图像高度(象素数)
* BYTE bThre - 阈值
*
* 返回值:
* BOOL - 成功返回TRUE,否则返回FALSE。
*
* 说明:
* 该函数用来对图像进行梯度锐化。
*
************************************************************************/
BOOL WINAPI GradSharp(LPSTR lpDIBBits, LONG lWidth, LONG lHeight, BYTE bThre)
{
// 指向源图像的指针
unsigned char* lpSrc;
unsigned char* lpSrc1;
unsigned char* lpSrc2;
// 循环变量
LONG i;
LONG j;
// 图像每行的字节数
LONG lLineBytes;
// 中间变量
BYTE bTemp;
// 计算图像每行的字节数
lLineBytes = WIDTHBYTES(lWidth * 8);
// 每行
lpSrc = lpDIBBits;
lpSrc1 = lpSrc + lLineBytes;
lpSrc2 = lpSrc + 1;
for(i = 0; i < lHeight; i++)
{
// 每列
for(j = 0; j < lWidth; j++)
{
bTemp = abs((*lpSrc)-(*lpSrc1++)) + abs((*lpSrc)-(*lpSrc2++));
lpSrc++;
// 判断是否小于阈值
if (bTemp < 255)
{
// 判断是否大于阈值,对于小于情况,灰度值不变。
if (bTemp >= bThre)
{
// 直接赋值为bTemp
*lpSrc = bTemp;
}
}
else
{
// 直接赋值为255
*lpSrc = 255;
}
}
}
// 返回
return TRUE;
}
cyberarmao
2002-11-20
打赏
举报
回复
那就增加点内容,锐化->二值化后->再得到目标的坐标,
司马青衫依旧
2002-11-20
打赏
举报
回复
上面的好像是《VC++数字图像处理》上的。
yuga
2002-11-20
打赏
举报
回复
/*************************************************************************
*
* 函数名称:
* GradSharp()
*
* 参数:
* LPSTR lpDIBBits - 指向源DIB图像指针
* LONG lWidth - 源图像宽度(象素数)
* LONG lHeight - 源图像高度(象素数)
* BYTE bThre - 阈值
*
* 返回值:
* BOOL - 成功返回TRUE,否则返回FALSE。
*
* 说明:
* 该函数用来对图像进行梯度锐化。
*
************************************************************************/
BOOL WINAPI GradSharp(LPSTR lpDIBBits, LONG lWidth, LONG lHeight, BYTE bThre)
{
// 指向源图像的指针
unsigned char* lpSrc;
unsigned char* lpSrc1;
unsigned char* lpSrc2;
// 循环变量
LONG i;
LONG j;
// 图像每行的字节数
LONG lLineBytes;
// 中间变量
BYTE bTemp;
// 计算图像每行的字节数
lLineBytes = WIDTHBYTES(lWidth * 8);
// 每行
for(i = 0; i < lHeight; i++)
{
// 每列
for(j = 0; j < lWidth; j++)
{
// 指向DIB第i行,第j个象素的指针
lpSrc = (unsigned char*)lpDIBBits + lLineBytes * (lHeight - 1 - i) + j;
// 指向DIB第i+1行,第j个象素的指针
lpSrc1 = (unsigned char*)lpDIBBits + lLineBytes * (lHeight - 2 - i) + j;
// 指向DIB第i行,第j+1个象素的指针
lpSrc2 = (unsigned char*)lpDIBBits + lLineBytes * (lHeight - 1 - i) + j + 1;
bTemp = abs((*lpSrc)-(*lpSrc1)) + abs((*lpSrc)-(*lpSrc2));
// 判断是否小于阈值
if (bTemp < 255)
{
// 判断是否大于阈值,对于小于情况,灰度值不变。
if (bTemp >= bThre)
{
// 直接赋值为bTemp
*lpSrc = bTemp;
}
}
else
{
// 直接赋值为255
*lpSrc = 255;
}
}
}
// 返回
return TRUE;
}
基于SIFT特征全景
图像
拼接(
C语言
实现)
本
原码
是用
C语言
实现的SIFT算法,可以提取SIFT特征和利用SIFT特征进行
图像
拼接和全景图构造,只需进行一些简单的OPENCV配置,就可以顺利运行。
C语言
扫雷课程设计
原码
+报告
C语言
扫雷课程设计
原码
+报告 自己弄的超级全啊
JavaSE基础视频精讲①:环境配置和二进制转换
本课程适用于零基础小白快速入门Java语言技术,通过课程学习可以清晰了解Java开发的环境配置和二进制转换。课程配套完整的(笔记+代码+作业) 课程主要
分
为: 1.软件开发的常识 2.Java语言的简介 3....
原码
反码以及补码
C#常用的42个类
总结的常用的C#42个CLASS,希望能帮到大家的忙。
c语言
补码转
原码
,
C语言
编程之二进制
原码
、反码和补码
在计算机中,数据是以补码的形式存储的,所以补码在
c语言
的教学中有比较重要的地位,而讲解补码必须涉及到
原码
、反码。详细释义所谓
原码
就是二进制定点表示法,即最高位为符号位,“0”表示正,“1”表示负,其余位...
机器视觉
4,446
社区成员
15,335
社区内容
发帖
与我相关
我的任务
机器视觉
图形图像/机器视觉
复制链接
扫一扫
分享
社区描述
图形图像/机器视觉
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章