matlab如何同时对多张图片进行二值化处理?

作者&投稿:罗些 (若有异议请与网页底部的电邮联系)
matlab如何同时对多张图片进行二值化处理?~

c就是二值化处理后的数据,d是你设置的门限。
a =imread('test.png');
b = rgb2gray(a);
c = im2double(b);
d = 0.5;
pos =find (c>d);
c(pos) =1;
pos =find (c<=d);
c(pos) =0;

用函数im2bw可以实现对灰度图像(或彩色图像的二分处理)。
具体用法如下:BW = im2bw(path, level)。其中,path表示图片的完全路径;level表示区分黑白色的界限(0~1之间的数字)。返回值BW 就是一个只含有01的矩阵。
通常二值化后,用imshow可以看到黑白图片,但实际中还要根据目的做进一步处理,比如较小的全区块0(或者1)为了整体分布的简单会忽略掉。

可以这样,你将800张图片的名字修改成1.jpg,2.jpg……800.jpg,在程序里面运行的时候用
for i=1:800
a=imread([num2str(i) '.jpg'])
end
这样就可以进行循环读入了,然后后面的你就可以了!这个是比较笨的办法!
还有个聪明的,高级一些,但是就怕你不理解!呵呵

dir函数
然后dir(i).name
这样名字没规律也行

把图片放在手机上,用扫描全能王软件就能处理,再传回电脑即可!

你总是要一张张读入再进行二值化处理的,哪能像你讲的不是一张一张的进行处理啊?


matlab 如何同时显示 多幅 fig 图像
主界面Desktop-->Figures,选择如何摆放,然后依次导入已有的fig图像

Matlab中怎样同时找出一组数中最小第二小的一个数?
对最后一列排序,并返回索引向量IX,然后取其前两个即可。例如,如果矩阵为M,则 >> [B, IX] = sort(M(:,3));>> M(IX(1:2), :)ans = 30.7000 48.9000 11.6004 18.5000 36.2000 12.6143

matlab怎样同时画出两个函数图
两个函数都有函数表达式的话,自变量在定义范围取值,分别计算出两个函数对应的数据序列,再把数据画出来就可以了,例如把初相为零的正弦和余弦函数画在一张图中:clc;clear all;close all;x=0:0.1:4*pi;y1=sin(x);y2=cos(x);plot(x,y1,'r',x,y2,'b')---第一个函数为红色曲线,第...

matlab两个程序同时运行,影响函数变量吗
不影响。在MATLAB中,全局变量用命令global定义,每个MATLAB应用里的变量都是独立的,因此两个同时运行计算完全不会互相影响。函数文件内部的变量事实局部变量,它们与其他函数文件及MATLAB工作空间相互隔离。

如何用MATLAB在一张图中同时画三维和二维图?
参考代码:[x,y]=meshgrid(1:10);z=x+y-10;clfsurf(x,y,z)view(-115,27)hold onsurf(x,y,z*0-10,z)shading interp

matlab表达式多个变量如何同时赋值计算啊,那位大侠知道?
Multiple Substitutions:subs(cos(a)+sin(b),{a,b},{sym('alpha'),2}) returns cos(alpha)+sin(2)使用subs就可以 然后用double命令就可以转成数值了

这两个编程在MATLAB里的图像怎么同时在一幅图里显示,求详细过程。_百度...
你用subplot函数将一个figure分成4个区域,然后在每个区域正常作图就可以了 figure;subplot(221)显示图片;subplot(222)显示图片;subplot(223)显示图片;subplot(224)显示图片;这样就可以了,这个电脑没有装matlab,要不然给你做个实例就更直观了

MATLAB多个窗口同时运行
楼主你好 你的证明确实是在这样的,我也试验了下,个人认为是当matlab开始运行后,就将所有代码都读入内存,就算运行之中通过其他软件-例如记事本修改了正在运行的代码,也不会影响内存中的计算。个人见解,欢迎讨论

matlab可以用GUI界面实现两个m文件同时运行吗
多个m文件都用到)。matlab GUI的运行机制为事件触发机制,也就是说,你点一下会触发一个中断立刻跳转到你指定的函数赶快执行一下,如果你写的函数没有连续执行的部分(比如循环),他会立即返回,如果有则会一直执行,点击触发多个连续执行的函数,就会有多个程序同时运行 ...

使用matlab,怎样同时打开2个m文件?
就双击你所需要打开的文件就能打开了,打开几个都行。你的问题是不是当你的窗口处于最大化时,只能看见一个,m文件啊?那个右上角有个选择显示窗口的按钮,好像是口字中间加一竖那样,表示显示成两栏,也就是两个.m文件,点开后还可以选择显示四个.m文件。要不就在:”窗口”菜单上转换所需显示的...

大东区13310877995: matlab同时读入多张图片的方法?各位大侠,拜托了!
照保卓莱: 什么都不用改,直接运行 dir_name=dir('E:\水煤浆\*.bmp'); for i=1:100 file_name=strcat('E:\水煤浆\',dir_name(i).name); load(file_name); end

大东区13310877995: matlab如何同时画多个图 -
照保卓莱: 画了一个图之后,如果想继续在该图中画新的曲线,那么可以在hold on 后面继续使用plot作图,为方便区分,可设置不同的曲线颜色.你这个程序里面因为没改颜色,并且函数是一个,只是定义域不同,所以四条曲线连在一起了.

大东区13310877995: 急急急!如何在matlab中一次导入多张图片 -
照保卓莱: 把a.m文件直接放在附件1文件夹里直接运行 imname = dir('.\*.bmp');%读入文件夹下的全部图像 im_num = length(imname);% 文件夹中图像的个数 im_temp = imread(imname(1).name,'bmp');%读入第一幅图像 [height,width] = size(im_temp);...

大东区13310877995: matlab imread 怎么一次读取多张图片?用循环的方法 -
照保卓莱: fileform = '图片路径\*.bmp'; filepathsrc = '图片路径'; file = dir(fileform); for i = 1:length(file)myimg[i] = imread([filepathsrc, file(i).name]); end 图片路径替换成自己的图片路径,记得在最后加一个斜线

大东区13310877995: matlab 中怎么进行多个图像的读入 -
照保卓莱: 比如你要读取E盘里的png 格式的图片 p1=dir('E:\*.p*');%读取文件夹里的png 所有图片 *.p*是寻找E盘下后缀第一个字为p的 你当然可以改. [r1 c1]=size(p1); for i=1:r1ImgN=p1(i).name;%图片的名字ImgN=strcat('E:\',ImgN);%读取图片Img=(imread(ImgN));if size(Img,3) == 3 %如果维数为三 则RGB图像转化为灰度图像Img = rgb2gray(Img);elseImg = Img;endend

大东区13310877995: 请问如何在matlab读取多幅图像? -
照保卓莱: [FileName,PathName] = uigetfile('*.jpg','Select the JPG-file','MultiSelect', 'on'); len=length(FileName); for i=1:lenI{i}=imread(FileName{1}); end元胞数组I中存放的是读入的每一幅图像的数据.

大东区13310877995: 我现在要往matlab中读入多个图片,请问要怎么实现啊? -
照保卓莱: 如果是这样的情况,你还得把a001-a654全选上,再按f2重命名, 新命名输入a就可以,然后,看如果全部图像名称相似就用下面的方法,下面的图像是a(1).gif-a(654).gif for ii=1:654 x{ii}=imread(strcat('D:\My Documents\FFOutput\(',num2str(ii),').gif')); end

大东区13310877995: matlab怎样一次绘图汇出多张图像? -
照保卓莱: 1、程序1>> figure>> ezplot('x^2')>> figure>> ezplot('1/x') figure指令,重新开辟一个窗口.2、程序2 在要建立新的那句话前面加一个figure(k).其中k的值每用完一次后+1就行.如 k=1;......figure(k) k=k+1; plot(...)......figure(k) k=k+1; plot(...)

大东区13310877995: 怎么用matlab把两幅图像叠加在一起? -
照保卓莱: [f1 p1]=uigetfile('*.jpg'); %选取第一幅图像 Path1=[p1 f1] %获取图像的路径 [A1 map1]=imread(Path1);%读取图像,A1即为图像矩阵. [f2 p2]=uigetfile('*.jpg'); %选取第二幅图像 Path2=[p2 f2] %获取图像的路径 [A2 map]=imread(Path2);%读取图像,A2即为图像矩阵. %当两幅图尺寸一样大的时候,就可以进行叠加. X=A1*50%+A2*50%; imshow(X);%显示图像

大东区13310877995: matlab连续处理图片 -
照保卓莱: pic0 = imread(filename,'bmp'); 感觉这句话有问题 为什么你读单张的时候不加.bmp但是读多张的时候用了 for s=1:4 读连续图片:filename = [int2str(s) '.bmp']; pic0 = imread(filename); 我觉的这样就行啊

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网