0

我有以下格雷码模式,但对我来说它看起来像二进制模式。请让我知道这是否正确或必须更改某些内容?

n = ceil(log2(py));  T = length(n) ;
gray_pattrn = zeros(2^n,1) ;  gray_pattrn(2) = 1;  T = 2;
for  k = 2:n
   T2 = T+T ;
   gray_pattrn(T+1:T2) = T + flipud(gray_pattrn(1:T)) ;
   T = T2;  
end
mat = transpose(flip(transpose(de2bi(gray_pattrn))));

gray_level = 4; 
patternSeq = transpose(repmat(mat(:, gray_level), 1, 1024));
figure, imagesc(patternSeq); colormap gray;
figure, plot(patternSeq(512,:));

我得到了以下图像。

格雷码模式 像素 512 处的格雷码

4

1 回答 1

2

尽管有这个名字,格雷码是二进制的,所以你得到的很可能是正确的(我实际上没有检查你的代码)。它被称为格雷码是因为它是由弗兰克格雷发明的,而不是因为它输出灰度值(它不输出)。

于 2021-01-17T10:04:42.660 回答