How to create a binary grating pattern with Matlab?

Hello Everyone,
I want to design several binary grating patterns with matlab. The matrix size is 1920*1080, the period is 4 pixels. The patterns have there direction angle, one is zero, the second is 2*pi/3, the last is 4*pi/3. I tried used square function, but the result is not correct. Does anyone know how to do this?
Thank you very much. Xiaolei

 Akzeptierte Antwort

Joseph Cheng
Joseph Cheng am 25 Jun. 2014
Bearbeitet: Joseph Cheng am 25 Jun. 2014
Well... what you could do is do:
I = zeros(1920,1080);
cols = 0:1080-1;
I(:,find(mod(cols,4)<2))=1;
and then use imrotate to get your direction angle.

2 Kommentare

Xiaolei
Xiaolei am 25 Jun. 2014
Hello Joseph, Thank you very much, that's very helpful. But there is a problem when I use imrotate, the matrix will change. I just want the grating pattern direction change while keep the matrix still is 1920*1080. Another question is how can I change the phase of this pattern? Would you please give me some suggestions?
My license for imageprocessing was taken up by someone else so i couldn't try. However reading the documentation it maybe a property that you can set within the imrotate function.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Aerospace Blockset finden Sie in Hilfe-Center und File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by