Other Parts Discussed in Thread: DLP-ALC-LIGHTCRAFTER-SDK, DLPC350
Tool/software: Linux
Hi,
I'm new to DLP LightCrafter 4500, and recently I'm using this device to create my own structured light based 3d scanner. So I choose DLP-ALC-LIGHTCRAFTER-SDK to help me with developing it.
I've already successfully compiled the SDK with MinGW32 (32bit). Everything works well on Windows 10.
However, when I tried to migrate my code to Ubuntu 16.04 64bit, something weird happened~
In the SDK, there's one function in lcr4500.cpp : LCr4500::PreparePatternSequence. What I did is to generate my own mono-8 pattern from image data with cv::Mat format, add the pattern into sequence, and pass the sequence to the function above. Based on the source code inside, I can tell that PreparePatternSequence stacks every 3 pattern together to form a 24bit image, stores them on local disk with file name like "dlp_sdk_lcr4500_dlpc350_prepared.bin.flash_image_0.bmp", and upload them to DLP through USB.
Here is the problem: On Ubuntu 16.04, the 24bit image generated by exactly the same source code on Windows, now becomes totally a mess. The patterns are very irregular and full of random weird texture, which is far from the desired images as I can create on windows. I double-check the original pattern data created by OpenCV and it turns out to be right cuz I print it out to verify it. So I guess what's going wrong is inside the SDK. Maybe it's OS platform related?
Any clues or explanations for this ? Thanks for the help~
Shane