使用指定级的量化级别来输出图像
quant_A = imquantize(A,levels) quant_A = imquantize(___,values) [quant_A,index] = imquantize(___)解释: 使用N个元素矢量级别量化值对图像A进行量化。输出图像与原图像相同,并且包含N+1个离散整数值,范围在1~N+1之间,这些值由以下条件决定:
If A(k) ≤ levels(1), then quant_A(k) = 1. If levels(m-1) < A(k) ≤ levels(m) , then quant_A(k) = m. If A(k) > levels(N), then quant_A(k) = N + 1.注意,imquantize将值分配给两个隐式定义的结束时间间隔:
A(k) ≤ levels(1) A(k) > levels(N)quant_A = imquantize(___,values),将N+1个元素的矢量值相加,其中N=长度(级别)。N+1个中每一个元素的值都为quan_A中的N+1个离散像素值之一指定量化值。
If A(k) ≤ levels(1), then quant_A(k) = values(1). If levels(m-1) < A(k) ≤ levels(m) , then quant_A(k) = values(m). If A(k) > levels(N), then quant_A(k) = values(N + 1).[quant_A,index] = imquantize(___) returns an array index such that: quant_A = values(index) 案例:
clear all close all clc I=imread('timg.jpg'); I=rgb2gray(I); imshow(I) %计算图像的单阈值 level=multithresh(I); %使用imquantize将图像分割为两个区域,并指定multithresh返回的阈值级别。 seg_I = imquantize(I,level); figure imshowpair(I,seg_I,'montage')