C#getPixel和内存法读取灰度图信息
getPixel方法:
private int getPixels(Bitmap bmpobj){int[,] data = new int[1920, 1200];int max = 0;for (int i = 0; i < bmpobj.Height; i++){for (int j = 0; j < bmpobj.Width; j++){Color b = bmpobj.GetPixel(j, i);if (max < b.R){max = b.R;}}}return max;}
内存法:
private int GetImgInfo(Bitmap a){Bitmap src = new Bitmap(a);int w = src.Width;int h = src.Height;int max = 0;BitmapData srcData = src.LockBits(new Rectangle(0, 0, w, h), ImageLockMode.ReadWrite, PixelFormat.Format32bppArgb);unsafe{byte* p = (byte*)srcData.Scan0;int gray = 0;for (int j = 1; j < h - 1; j++){for (int i = 1; i < w - 1; i++){gray = p[0] ;//+= (p[0] + p[1] + p[2]) / 3;p += 4;if (max < gray){max = gray;}}p += srcData.Stride - w * 4;}src.UnlockBits(srcData);return max ;}}
根据数组画图
private Bitmap drawPic(byte[] srcdata, int width, int height){// 8bit索引方式位图,设置灰度调色板var fmt = PixelFormat.Format8bppIndexed;var bmp = new Bitmap(width, height, fmt);var palette = bmp.Palette;for (var i = 0; i < 256; i++){palette.Entries[i] = Color.FromArgb(i, i, i);}bmp.Palette = palette;// 把数据映射到256灰度,unsafe填充到位图var bmpData = bmp.LockBits(new Rectangle(0, 0, width, height), ImageLockMode.WriteOnly, fmt);unsafe{var p = (byte*)bmpData.Scan0;for (var i = 0; i < srcdata.Length; i++){*p = (byte)(srcdata[i]);p++;}}bmp.UnlockBits(bmpData);return bmp;}
View Code
根据灰度图像读入一维数组 对于8位深度图像来说
public unsafe byte[] ToArray(Bitmap b){BitmapData data = b.LockBits(new Rectangle(0, 0, b.Width, b.Height), ImageLockMode.ReadOnly, b.PixelFormat);int height = data.Height;int stride = data.Stride;IntPtr ptr = data.Scan0;int scanBytesLength = stride * height;byte[] rgbValues = new byte[scanBytesLength];unsafe{Marshal.Copy(ptr, rgbValues, 0, scanBytesLength);}b.UnlockBits(data);return rgbValues;}
转载于:https://www.cnblogs.com/zhayunjia/p/8078606.html
C#getPixel和内存法读取灰度图信息相关推荐
- python读取灰度图_Python读取MRI并显示为灰度图像实例代码
Python读取MRI并显示为灰度图像实例代码 本文实例主要关于Python实现读取MRI(核磁共振成像)为numpy数组,使用imshow显示为灰度. 代码如下: import matplotlib ...
- python image处理 读取image 读取灰度图边缘
python提取彩色图像RGB三通道 OpenCV读取图像后,按照BGR方式排列图像矩阵 PIL(python image library)库读取图像后,按照RGB方式排列图像矩阵 RGB:red, ...
- unity 读取灰度图生成按高程分层设色地形模型
准备灰度图 1.高程按比例对应hue色相(hsv)生成mesh效果 o.color = float4(hsv2rgb(float3(v.vertex.y/100.0, 0.5, 0.75)), 1.0 ...
- unity读取灰度图生成等值线图
准备灰度图 grayTest.png,放置于Assets下StreamingAssets文件夹中. 在场景中添加RawImage用于显示最后的等值线图. 生成等值线的过程,使用Marching squ ...
- 【UE4 C++】读取灰度图/RGB图中的像素值生成自定义形状的模型分布
效果图 一.PS制作一张自定义形状的像素图 导出为PNG图片 二.UE4创建函数库读取图片像素颜色 1.新建C++类 2.头文件中添加函数 public:UFUNCTION(BlueprintCall ...
- cv2 inrange灰度图_Python opencv将图片转为灰度图的方法示例
这篇文章主要介绍了python opencv将图片转为灰度图的方法示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧 使用ope ...
- c语言实现灰度图转换为二值图
转载自:https://www.cnblogs.com/wd1001/p/4571916.html c语言实现灰度图转换为二值图 将上篇得到的灰度图转换为二值图,读取像素数据,低于某一值置0,否则设置 ...
- c语言实现灰度图转换
#include<stdio.h> #include<malloc.h> #include<stdlib.h> #include <math.h> /* ...
- 用imageio读灰度图
import scipy.misc img_array = scipy . misc . imread ( image_file_name , flatten = True) 在scipy 1.3.1 ...
最新文章
- 在技术圈混,不知道这些你就 OUT 了
- java面试填空题 jsp_JSP基本面试的试题
- IDEA小技巧:Debug条件断点
- 修改android4.0的鼠标箭头图标(方法)
- Linux Shell脚本编程--grep命令
- finally块的问题(finally block does not complete normally) (转)
- Linux - Redis介绍以及安装 (简易版本)
- java自学难点_学习JAVA遇到的难点总结
- Vagrant 手册之 Provisioning - file 配置程序
- this version of the Java Runtime only recognizes class file versions up to 52.0
- getchar与getch函数的区别
- 公司装了cofax传真服务器真的解决了收发传真时存在的诸多不便
- 如何区分前后端bug
- 自定义View | 仿QQ运动步数进度效果
- python绘制拟合回归散点图_matplotlib中散点图的回归线和拟合曲线
- 一度智信:电商推广计划
- PS图片转3D(PS与AE交互)
- springboot——项目install报错
- LeetCode.1005-K次取负数组和最大(Maximize Sum Of Array After K Negations)
- 河南理工大学篮球计算机,河南理工大学