Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

[SOLVED] 2D - 3D conversion in embedded linux

Status
Not open for further replies.

Alper özel

Member level 1
Member level 1
Joined
Feb 28, 2015
Messages
40
Helped
0
Reputation
0
Reaction score
0
Trophy points
6
Location
Turkey / Scotland
Activity points
487
We have a system that we can not change. Systems output is 2D video in DisplayPort format. Video is in 1080 p resolution and 120 Hz. We need to convert this 2D video to 3D in realtime. We will be able to get 3D depth map. Now, I have to prepare a preliminary design report. So I kinda have to figure out how to convert 2D video to 3D.

And I think FPGA is not an option since minimum data rate is 1.62 Gb/s and FPGA can not handle this much data processing. So it leaves embedded linux as an option. Thus first question: Am I right so far? If not, why?

Secondly, what are my options in specific? I think of Rasberry pi and blackbone. Second question: Are there any options? I already designed a backlight unit, active shutter glass and synchronizer and now I need to implement 3D conversion block on an external circuit. Have can I do that? Is it so hard? Should I go with rasberry pi? I don't know If the customers will be satisfied about it if I go with rasberry pi. And secondly, can rasperry pi handle displayport and 3D conversion?

So to summarize:

1) What are my options to process the video coming via DisplayPort and for 3D conversion?
2) Which option is the simplest one?
3) Could you explain the 3D conversion (with given depth map) method in general?
 

1.62Gb/s is far more in the FPGA comfort zone then a small embedded core like a ras pi.

We routinely do 2.97Gb/s video streams using the very mundane spartan 6, and 12Gb/s video stream processing using something more serious.

Design your algorithm, start by pulling the data into a PC and writing a CUDA program to process it, then eventually move to real hardware once you have the math right.

Regards, Dan.
 
I second Dan's answer.

Implementing logic on the FPGA is definitely more efficient than a 'software based' implementation - building a dedicated data processing unit can be better than using a standard processor core.

If cost is an issue, Xilinx does have some low cost FPGA boards such as the Artix 7 Arty. Check the link below.

https://www.xilinx.com/products/boards-and-kits/arty.html

You would need to get used to the tools/hardware design paradigm though.

As Dan suggested, you could use a GPU with CUDA. Alternatively, you could use OpenCL/OpenCV for the same.

Hope that helps.
 
Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top