⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 nano2read.m

📁 matlab处理图像的一些基本方法。其中有一部分mex程序需要安装编译
💻 M
字号:
function  [img, header, errmsg] = nano2read(filename)%NANO2READ  Read the header and the image from a nanoscope 2 file.%%       [I, H, ERRMSG] = NANO2READ(FILENAME, OPTION)%%       Return:     1) The header of the file, empty on error.%                   2) The image matrix, empty on error.%                   3) An error message if occours.%%    OPTION can be:  FIRST   -return the first image%            SECOND  -return the second image%            BOTH    -return both images in one matrix%%    On error, an error message is displayed if nargout < 3.%       After read the file the image is 90 degree rotated and%    the bytes are flipped in order to be reproducible%    with the nanoscope.%%       Claudio  11 Oct, 1995.%%% Copyright (c) 1995 by Claudio Rivetti and Mark Young% claudio@alice.uoregon.edu,    mark@alice.uoregon.edu%global Original_NANO2_headerHEADER_SIZE_NS2 = 2048;fp = fopen(filename, 'r');if fp == -1    if nargout==3      errmsg='File not found';    else      error('File not found');    end    return;end[header,n] = fread(fp, HEADER_SIZE_NS2, 'char');header=setstr(header)';if n~=HEADER_SIZE_NS2  |  isempty(findstr(header, 'z_scale'))    fclose(fp);    if nargout==3      errmsg='Wrong file format';    else      error('Wrong file format');    end    returnendheader=strrep(header, [13 10], [13 10, '\']);header=['\*' header];header=strrep(header, [13 10 92 32 ], 32);header=strrep(header, [92 26], 26);header=strrep(header, ' =', ':');Original_NANO2_header=header;header=setparameter(header, '*ALEX Header', '');header=setparameter(header, 'File Type', 'NANO2');header=setparameter(header, 'Date', getparameter(header, 'time',1));header=setparameter(header, 'Data length', HEADER_SIZE_NS2);qq=getparameter(header, 'num_samp',1);header=setparameter(header, 'Samps/line', [qq qq]);header=setparameter(header, 'Serial number', ' ');header=setparameter(header, 'Id', getparameter(header, 'h_id',1));header=setparameter(header, 'X offset', '0 nm');header=setparameter(header, 'Y offset', '0 nm');qq=getparameter(header, 'scan_sz',1);header=setparameter(header, 'Scan size', [num2str(qq) ' nm']);f=getparameter(header, 'z_scale', 1)/16385;header=setparameter(header, 'Trasform. Factor', f);header=setparameter(header, 'Note', [getparameter(header, 'text',1) ' ']);header=strrep(header, '  ', ' ');header=strrep(header, '  ', '');hlen=length(header);if hlen > HEADER_SIZE_NS2  header=header(1:HEADER_SIZE_NS2);else  header=[header zeros(1,HEADER_SIZE_NS2-hlen)]; endmsize=getparameter(header, 'Samps/line',2);img = fread(fp, msize, 'short', 'vaxd');fclose(fp);img = rot90(img);return

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -