谁懂C#的二值化的请进来 50

能给我解释这段代码里每句的含义吗http://wenku.baidu.com/view/9bbb21ef551810a6f52486be.html... 能给我解释这段代码里每句的含义吗
http://wenku.baidu.com/view/9bbb21ef551810a6f52486be.html
展开
 我来答
百百mp3
2013-01-30 · TA获得超过855个赞
知道小有建树答主
回答量:901
采纳率:90%
帮助的人:600万
展开全部
这个用了指针去处理图像,实在太多了我只解释重要的部分吧。
public int[,] Binary_L(double value){

Rectangle rect = new Rectangle(0, 0, curBitmap.Width, curBitmap.Height);
//表示图像大小的矩形
System.Drawing.Imaging.BitmapData bmpData = curBitmap.LockBits(rect, System.Drawing.Imaging.ImageLockMode.ReadWrite, curBitmap.PixelFormat);
//载入内存,在内存进行图片处理
pic = new int[bmpData.Width, bmpData.Height];
//定义数组
unsafe //必须加unsafe才能在C#使用指针
{
byte* ptr = (byte*)(bmpData.Scan0); //获取指向在内存的所有像素的指针,以byte回值
for (int i = 0; i < bmpData.Height; i++) //遍历像素
{
for (int j = 0; j < bmpData.Width; j++)
{
//算法
if (RGB2L(ptr[2], ptr[1], ptr[0]) < value)
{
pic[j, i] = 1;
}
else
{
pic[j, i] = 0;
}
ptr += 3;
}
//指针的推加
ptr += bmpData.Stride - bmpData.Width * 3;
}
}
//解锁图片在内存里缓存以释放内存

curBitmap.UnlockBits(bmpData);
//返回先前定义的数组
return pic;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
光点科技
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件... 点击进入详情页
本回答由光点科技提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式