This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DLPLIGHTCRAFTER: Dark stripes in random patters displayed in the “Stored Pattern Sequence” mode

Part Number: DLPLIGHTCRAFTER

Hi everyone,


We are facing a problem, when using Lightcrafter EVM in the “Stored Pattern Sequence” mode, where we use a set of binary random masks. The DMD device for some reason displays a set of dark stripes.


To explain closely - we use binary random masks (containing pixels of 0 or 255 intensity) with a given resolution (for example 80x80). The masks are resized for the Lightcrafter native resolution (608 x 684 pixel) and sent to Lightcratfer to be displayed (single image time of about 0.1 s).


We have checked that the resized arrays (608x684 pix.) look as expected. When we send such images to Lightcrafter to be displayed in the sequence mode, we observe a strange fence-like pattern to occur between the mask pixels. Interestingly, such pattern becomes clearly visible only when we average several patterns.

For a comparison, I attach:

(i) a numerical average of 10 random masks sent from Matlab in a Stored Pattern Sequence mode to the DMD (no stripes present)

(ii) an image of the DMD captured with a camera with sufficient exposition assuring the masks averaging (visible stripes in the zoomed image).

Do you have any explanation for this? Would it be possible to get rid of it?

Thanks,
Karel

  • Hello Ondrej and welcome to the DLP forums,

    I am having difficulty understanding what you see in the second picture versus what you are expecting to see. Would you be able to highlight or circle the issues? Is it possible you weren't taking into effect the diamond pixel grid of the DMD?

    Thanks,
    Kyle
  • Dear Kyle,

    thank you for your quick response. It is quite possible, that we observe an effect of the diamond pixel grid. We just do not know how the effect comes into play.

    We work with Matlab matrices, which are 0-1 random masks. When we scale them to the Lightcrafter resolution [608 x 684 pixel] , we get 0-1 rectangular areas. If you average several of them, you see rectangles with different levels of gray (see the upper image), as expected. So far, so good.

    Then we take a series of such random patterns in Matlab [608 x 684 pixel] and we send them to Lightcrafter. In other words we have one-to-one mapping between the Matlab matrix and the Lightcrafter pixels. We start a sequence mode and observe one reflection from the DMD chip with a camera (we removed the light engine). We set the camera integration time so that approx. 10 images from DMD are averaged in a snapshot.

    On the camera, we see - quite unexpectidely - dark stripes (columns) between the random mask rectangular areas. This can be best seen in the bottom image (on its left side), where you see dark "vertical" lines. Even more interesting is the fact, that the same dark stripes appear in the other (inverse) reflection from DMD, where the random patterns are, of course, inversed.

    We are really puzzled by this and have no good explanation for what we see.
    Would you have an idea about origin of the stripes?

    Thanks,
    Karel and Ondrej
  • Hello Karel and Ondrej,

    So is what I have circled in red one of the vertical stripes you are talking about? Also how many DMD pixels is each one of the squares in the image? If each square is exactly one DMD pixel then it may be possible that the lines are the gaps between the DMD mirrors. However, since the grid is a diamond I would expect them to be zig zagged lines.

    Thanks,

    Kyle

  • Hello Kyle,

    you are right - the circled stripe is the thing bothering us. We use various sizes of the squares - from 8 pixels to 34.2 pixels of DMD. We see such stripes in all cases - always on the vertical borders between the squares; in all cases - only for averaged images (no stripes are apparent on a single image. Identical dark stripes are present in both reflections of the DMD.

    Actually, a minute ago I got an idea about possible source. Since we do not use the original light engine and instead we illuminate DMD with a collimated lamp in the perpendicular direction (the DMD is slighlty tilted in the vertical sense to reflect slightly above the incident beam) - would it be possible that we observe a shadow cast by differently orientated micromirrors?

    For me it makes sense because:
    the shadow would appear in both reflections from DMD (thus producing dark stripes in both)
    the shadow would not be apparent for a single image, because the dark pixels would just become slightly bigger
    the shadow would be visible in averaged image, because the shadow (0-1 edge) appears only along the borderline

    But I believe you can judge better - could the pixel shadow be the problem?

    Cheers,
    Karel
  • Hello Karel,

    I have talked to one of our optics experts and we don't think it is the pixel shadow as the shadow appears too large for that. Are you able to upload the patterns you are uploading to the Lightcrafter for us to take a look at? That may help us pinpoint the problem.

    Thanks,
    Kyle
  • Hello Kyle,

    the example of data matrix that we send to LightCrafter is attached as you asked. We also attach a simplified Matlab code (m-file) that we use to control the LightCrafter. The algorithm we use is slightly different, however the data received by LightCrafter are the same.

    Thanks,

    Ondrej and KarelLC_control.rar

  • Hello,

    Thanks for providing the code. I looked at a couple of the images that were being generated and I don't notice anything incorrect. Just to make sure you understand the diamond grid and how it could be affecting the resulting image I have attached a picture below that shows input pixels on the left side in the rectangular format and how they are mapped to the diamond grid on the right side.

    It would be interesting if you are able to send 1 8 bit pattern to the Lightcrafter and take an image to see if your image sees the same thing as when sending the 10 1-bit patterns.

    Thanks,

    Kyle

  • Hello,

    Were you able to solve the problem? If you still need help with this problem please feel free to ask a follow-up question.

    Thanks,
    Kyle