Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
learn:programmable-logic:tutorials:zybo-z7-pcam-5c-demo:start [2017/12/22 10:29] – [Prerequisites] sbobrowicz | learn:programmable-logic:tutorials:zybo-z7-pcam-5c-demo:start [2022/10/18 10:44] (current) – [Pcam 5C Image Quality Notes] Elod Gyorgy | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Zybo Z7 Pcam 5C Demo ====== | + | ====== Zybo Z7-20 Pcam 5C Demo ====== |
- | FIXME | + | {{: |
//The demo in action - displaying the Pcam 5C data.// | //The demo in action - displaying the Pcam 5C data.// | ||
Line 14: | Line 14: | ||
* Video data streams in through the Pcam port and out through the HDMI source (TX) port. | * Video data streams in through the Pcam port and out through the HDMI source (TX) port. | ||
* A UART interface is available to configure the image sensor and additional post processing IP Cores. | * A UART interface is available to configure the image sensor and additional post processing IP Cores. | ||
+ | |||
+ | The following table lists the currently supported video resolutions and output formats from the image sensor. Note that resolutions with frame rates lower than 60Hz are over sampled to 60Hz to output over the HDMI port. | ||
+ | |||
+ | |||
+ | ^ Supported Resolutions: | ||
+ | | * 1080p@30Hz\\ | ||
+ | |||
+ | |||
==== Features Used ==== | ==== Features Used ==== | ||
Line 44: | Line 52: | ||
===Hardware=== | ===Hardware=== | ||
- | * **Zybo Z7 board** | + | * **Zybo Z7-20 board** |
+ | * **[[https:// | ||
* **Micro-USB cable** | * **Micro-USB cable** | ||
- | * **1 HDMI cable** | + | * **1 HDMI Type A to Type A or HDMI Type A to DVI-D cable** |
* **1 Pcam 5C assembly** | * **1 Pcam 5C assembly** | ||
- | * **HDMI monitor** | + | * **HDMI |
===Software=== | ===Software=== | ||
Line 62: | Line 71: | ||
===== Download and Launch the Zybo Z7 Pcam 5C Demo ===== | ===== Download and Launch the Zybo Z7 Pcam 5C Demo ===== | ||
- | >Follow the [[:learn: | + | >Follow the [[learn: |
- | >Plug one end of an HDMI cable into a video source and the other into the Zybo Z7's HDMI RX port. Plug one end of the other HDMI cable into the HDMI TX port of the Zybo Z7 and the other into your HDMI monitor. | + | >Plug one end of the HDMI cable into the HDMI TX port of the Zybo Z7 and the other into your HDMI monitor. Also attach a USB micro cable between the Zybo Z7 and your computer. Finally, attach an external 5V power supply, since the power demand surpasses the USB power budget. |
> | > | ||
- | > | + | > |
- | >To see the UART communication channel, open a terminal program | + | >Attach |
> | > | ||
- | > | + | >{{: |
- | ===== Using the Zybo Z7 HDMI Demo ===== | + | >To see the UART communication channel, open a terminal program on your computer set to 115200 baud rate, 8 data bits, no parity bit and 1 stop bit. On startup, |
+ | > | ||
+ | > | ||
- | ==== HDMI Display Options | + | ===== Using the Zybo Z7 Pcam 5C Demo ===== |
- | > | + | ==== Pcam 5C Image Sensor and Post Processing Options ==== |
- | > 2 - Changes | + | |
- | > 3/4 - Store one of two test patterns in the chosen video frame buffer. | + | >**a - Change Resolution** |
- | > | + | > This option can be used to change |
- | > | + | >**b - Change Liquid Lens Focus** |
- | > | + | > This option is not compatible with this version of the Pcam 5C and should be ignored |
- | > | + | >**d - Change Image Format** |
+ | > This option was included for debugging purposes and should always be set to RAW mode (option | ||
+ | > | ||
+ | > This option allows you to write a value to any register inside the Image sensor over the OmniVision SCCB interface. You will need to refer to the OV5640 datasheet for information | ||
+ | >**f - Read a Register inside the Image Sensor** | ||
+ | > This option allows you to read the value of any register inside the Image sensor over the OmniVision SCCB interface. | ||
+ | >**g - Change Gamma Correction Factor Value** | ||
+ | > This option allows you to change | ||
+ | >**h - Change AWB Settings** | ||
+ | > This option allows you to adjust how the image sensor is doing auto white balancing. There are 3 modes: Advanced, simple, | ||
+ | |||
+ | ==== Pcam 5C Image Quality Notes ==== | ||
+ | |||
+ | This demo uses our own software to configure the OV5640 image sensor and open source IP to post process the image data. Both of these facets of the software greatly affect image quality. This section documents | ||
+ | |||
+ | We hope to improve the quality of the images produced by this demo over time, so please check back often if you are interested. We are also looking into using Xilinx IP and the Omnivision provided Linux drivers to provide another software option for the use of the Pcam 5C. This will be made available if successful on the [[add-ons: | ||
+ | |||
+ | === Color Accuracy === | ||
+ | |||
+ | >We have seen some issues with the accuracy of the colors produced in some conditions. The affect is that colors seem less vivid and washed out. In some cases the image tends to look a little skewed towards " | ||
> | > | ||
- | > | + | > |
+ | > | ||
+ | >//No gamma correction, Pcam on Left// | ||
+ | > | ||
+ | > | ||
+ | > | ||
+ | >//With gamma correction, Pcam on Left// | ||
> | > | ||
- | >//The demo in action - streaming HDMI data from a PC.// | ||
- | /*More example images should be added, perhaps break out each individual option into it's own subsection*/ | + | === Over Exposure === |
+ | |||
+ | >Some situations that contain a mix of dark and bright areas will cause the brighter areas to look overexposed. Notice the very white area of the image produced by the Pcam 5C. | ||
+ | > | ||
+ | > | ||
+ | > | ||
+ | >//Pcam on left with overexposure of bright area on right side of image// | ||
+ | > | ||
+ | |||
+ | === Visible Border Line === | ||
+ | |||
+ | >The top and left edges of the image have a single pixel gray line. This artifact is introduced by our post processing IP, | ||
+ | > | ||
+ | > | ||
+ | > | ||
+ | >//Gray border on the top and left sides// | ||
+ | > | ||
- | /*{{tag> | + | {{tag> |