1调用matlab的图像读取函数imread读,把放在work文件夹下
I = imread('样品jpg');
2变为灰度图
G = rgb2gray(I);
3双击workspace中的G项,在d出的array edit中就看到了灰度矩阵
用for循环遍历所有需要处理的文件即可。
如果文件的命名有规律(例如0001bmp, 0002bmp, ),可以用sprintf函数直接生成文件名;
如果不满足上述条件,但文件在集中存放某个文件夹中,可以用dir获取文件列表;
如果文件没有规律,存放的位置也比较乱,那就直接手写一个cell数组,用以指定要处理的文件列表。
1调用matlab的图像读取函数imread读,把放在work文件夹下
i
=
imread('样品jpg');
2变为灰度图
g
=
rgb2gray(i);
3双击workspace中的g项,在d出的array
edit中就看到了灰度矩阵
Bitmap bmp = new Bitmap(100, 100);
using (Graphics g = GraphicsFromImage(bmp))
{
gFillEllipse(BrushesRed, new Rectangle(0, 0, 80, 80));
gFillRectangle(new SolidBrush(ColorFromArgb(128, ColorGreen)), new Rectangle(20, 20, 80, 80));
}
eGraphicsDrawImage(bmp, new Point(10, 10));
//简单的
ControlPaintDrawImageDisabled(eGraphics, bmp, 120, 10, ColorWhite);
//用颜色矩阵
SystemDrawingImagingImageAttributes attr = new SystemDrawingImagingImageAttributes();
float[][] colorMatrixElements = {
new float[] {33f, 33f, 33f, 0, 0}, // r = (r+g+b)/3
new float[] {33f, 33f, 33f, 0, 0}, // g = (r+g+b)/3
new float[] {33f, 33f, 33f, 0, 0}, // b = (r+g+b)/3
new float[] {0, 0, 0, 1, 0}, // alpha scaling factor of 1
new float[] {0, 0, 0, 0, 1}}; //
SystemDrawingImagingColorMatrix matrix = new SystemDrawingImagingColorMatrix(colorMatrixElements);
attrSetColorMatrix(matrix);
eGraphicsDrawImage(bmp, new Rectangle(10, 120, 100, 100), 0, 0, 100, 100, GraphicsUnitPixel, attr);
void LoadRawFile(string name, int size)
{
FileStream fs = new FileStream(name, FileModeOpen, FileAccessRead, FileShareRead);
BinaryReader r = new BinaryReader(fs);
heightMap = rReadBytes(size);
rClose();
fsDispose();
}
LoadRawFile( "Terrainraw", MAP_SIZE MAP_SIZE);读取
灰度信息在 heightMap里
以上就是关于java 8位灰度图的灰度值怎么获取,用ImageIO获得的怎么和matlab获得的不一样,希望高手能指教一下!全部的内容,包括:java 8位灰度图的灰度值怎么获取,用ImageIO获得的怎么和matlab获得的不一样,希望高手能指教一下!、matlab如何批量提取图像灰度值、怎么用matlab提取灰度值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)