nano2write.m

来自「matlab处理图像的一些基本方法。其中有一部分mex程序需要安装编译」· M 代码 · 共 73 行

M
73
字号
function  [count, errmsg]= nano2write(filename, header, img)%NANO2WRITE  Write the header and the image to a nanoscope 2 file.%%       [COUNT, ERRMSG] = NANO2WRITE(FILENAME, HEADER, IMAGE)%%       Return the number of elements successfully written.%              and an error message if occour.%%       Before to write the file, the image is -90 degree%    rotated and the bytes are flipped in order to be%    compatible with the nanoscope.%%%       Claudio  October 11, 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, 'w');if fp == -1    errmsg='Can not create file';    return;endimg=rot90(img, -1);h=Original_NANO2_header;h=setparameter(h, 'num_samp', size(img,1));h=setparameter(h, 'scan_sz', scansize(header));h=setparameter(h, 'text', getparameter(header, 'Note',1));h=strrep(h, ': ', ' = ');h=strrep(h, [13 10 92], [13 10]);h=h(3:length(h));hlen=length(h);if hlen > HEADER_SIZE_NS2  h=h(1:HEADER_SIZE_NS2);else  h=[h zeros(1,HEADER_SIZE_NS2-hlen)]; endcount_header = fwrite(fp, h', 'char');count_img    = fwrite(fp, img, 'short', 'vaxd');em=ferror(fp, 'clear');fclose(fp);count = prod(size(h)) + prod(size(img));if count ~= count_header + count_img    errmsg=em;endreturn

⌨️ 快捷键说明

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