NXP i.MX8QM SV3D-1.1 Demo 建置流程

關鍵字 :NXPi.MX8QMSVM

本篇文章要教大家如何在 i.MX8QM MEK 板上架設 NXP 提供的 Surround View 3D 1.1 (SV3D-1.1) 版本 Demo。

一、硬體需求:

  1. MX8QM MEK (CPU Board)
  2. MAX9286 Deserializer with miniSAS Cable
  3. OV10635 Camera with FAKRA Cable
  4. LVDS-to-HDMI Converter with miniSAS Cable
  5. HDMI Monitor

二、軟體需求:

  1. NXP Linux BSP L4.14.98_2.0.0_GA
  2. OpenCV 3.4
  3. GCC 7.3.0

 

三、Host CP 環境設定:

1、Yocto 專案設定:

請依照 NXP L4.14.98_2.0.0_GA Yocto Project User’s Guide 架設好編譯環境,並且使用 XWayland 的編譯設定:

$ DISTRO=fsl-imx-xwayland MACHINE=imx8qmmek source fsl-setup-release.sh -b build


2、設定 conf 檔案,如下:

MACHINE ??= 'imx8qmmek'

DISTRO ?= 'fsl-imx-xwayland'

PACKAGE_CLASSES ?= "package_rpm"

EXTRA_IMAGE_FEATURES ?= "debug-tweaks"

USER_CLASSES ?= "buildstats image-mklibs image-prelink"

PATCHRESOLVE = "noop"

BB_DISKMON_DIRS ??= "\

    STOPTASKS,${TMPDIR},1G,100K \

    STOPTASKS,${DL_DIR},1G,100K \

    STOPTASKS,${SSTATE_DIR},1G,100K \

    STOPTASKS,/tmp,100M,100K \

    ABORT,${TMPDIR},100M,1K \

    ABORT,${DL_DIR},100M,1K \

    ABORT,${SSTATE_DIR},100M,1K \

    ABORT,/tmp,10M,1K"

EXTRA_IMAGE_FEATURES += " tools-sdk eclipse-debug"

BB_NUMBER_THREADS = "32"

PARALLEL_MAKE = "-j 32"

PACKAGECONFIG_append_pn-qemu-native = " sdl"

PACKAGECONFIG_append_pn-nativesdk-qemu = " sdl"

CONF_VERSION = "1"

DL_DIR ?= "${BSPDIR}/downloads/"

ACCEPT_FSL_EULA = "1"


3、修改 Source Code 將 OV10635 的輸出格式,從 UYVY 改為 YVYU:

diff --git a/drivers/media/platform/imx8/max9286.c b/drivers/media/platform/imx8/max9286.c

index 0fb52f3..b1210eb 100644

--- a/drivers/media/platform/imx8/max9286.c

+++ b/drivers/media/platform/imx8/max9286.c

@@ -2061,7 +2061,7 @@ static struct reg_value ov10635_init_data[] = {

        { 0xc4bd, 0x60, 0 },

 

        { 0x4709, 0x10, 0 },/* dvp swap */

-       { 0x4300, 0x3a, 0 },/* YUV order UYVY */

+       { 0x4300, 0x39, 0 },/* YUV order UYVY */

        { 0x3832, 0x01, 0 },/* fsin */

        { 0x3833, 0x1A, 0 },

        { 0x3834, 0x03, 0 },


4、將 Yocto 專案內的 OpenCV 4.0.1 改成 OpenCV 3.4

下載 WPI 提供的設定檔,並取代 Yocto 專案原有的檔案:

https://mega.nz/#!HvplxSQA!m-_A6fLumzt8ORWQPAMELELWnQriLVfUPQAo_IQ8LRU

檔案路徑:

/sources/meta-fsl-bsp-release/imx/meta-bsp/recipes-graphics/opencv

檔案名稱:

opencv_4.0.1.imx.bb

指令:

$ cp opencv_4.0.1.imx.bb /sources/meta-fsl-bsp-release/imx/meta-bsp/recipes-graphics/opencv/opencv_4.0.1.imx.bb


5、編譯映像檔:

$ bitbake fsl-image-validation-imx

 

四、Target OS 設定

1、添加 Include 檔案:

下載 WPI 提供的 Include 壓縮檔,並且複製到 SD 卡中的 /usr/inc 路徑下:

壓縮檔連結:

https://mega.nz/#!2iwX2SIY!aoDCaOAjIsoCf4mmIYMk7iIcKc5VKJIXWvCjsMUMQnY

解壓縮指令:

 # tar xf imx8_inc.tar.gz


2、添加 Library 檔案:

下載 WPI 提供的 Library 壓縮檔,並且複製到 SD 卡中的 /usr/lib 路靜下:

壓縮檔連結:

https://mega.nz/#!mjghxASD!vY0S-rg-D8rH8eUnW9h4Zg5zKd_kX1v8kCyc5SxIIB8

解壓縮指令:

# tar xf imx8_lib.tar.gz



3、下載 SV3D-1.1 Source Code:

下載路徑:

https://www.nxp.com/webapp/sps/download/preDownload.jsp

解壓縮指令:

# unzip surround-view-3D_1.1_beta.zip -d .



4、打上 WPI 提供的 Patch:

下載路徑:

https://mega.nz/#!mmByFCqB!tDsz2a2H1vgUaLGs_1_MRJ9PcLEBaRhQA4NZOhrQYVY

將 Patch 複製到 Demo Source 的根目錄:

# cp WPI_SV3D_Patch_Ver1.1_20191004.patch < APP_ROOT_DIR >

打 Patch 指令:

# patch -p1 < WPI_SV3D_Patch_Ver1.1_20191004.patch


五、編譯 APP:

1、移動到 APP Source Code 目錄:

# cd /App/Source

編譯指令:

# make -f Makefile.wl DEVICE=IMX8QM -j4


六、i.MX8QM MEK 硬體環境設定:

  1. 將 MAXIM9286 解串器板連接到MX8QM MEK J10
  2. 將 LVDS-to-HDMI 轉板連接到MX8QM MEK J7
  3. 將 USB Type-C Hub 連接到MX8QM MEK J18
  4. 將 USB 鍵盤與滑鼠連接到 USB Type-C Hub

 

七、執行 Capturing APP

1、移動到 Tool 路徑:

# cd /Tools/CamCapture


a)執行 Capturing APP

# ./capturing


b)執行結果:



2、執行 Auto Calibration APP

a)移動到 Build 路徑

# cd /APP/Build


b)執行 the Auto Calibration APP

# ./ auto_calib_1.1


c) 使用鍵盤右鍵往下一步驟,鍵盤左鍵往上一步驟

d)執行結果

四分割畫面



執行魚眼校正


尋找標定板


標示 3D 網格


最終結果



3、執行 SV3D-1.1 APP

a)請先執行完 Auto Calibration APP 再執行 SV3D-1.1 APP

b)移動到 Build 路徑

# cd /APP/Build


c)執行 SV3D-1.1 APP

# ./ SV3D-1.1


d)執行結果:

按下滑鼠左鍵並拖曳可更改視角,使用滑鼠滾輪可以放大縮小





The End

大联大旗下世平集团  ATU 部门可以提供相关设计方案和技术支持,需要请联系 atu.cn@wpi-group.com

★博文內容均由個人提供,與平台無關,如有違法或侵權,請與網站管理員聯繫。

★文明上網,請理性發言。內容一周內被舉報5次,發文人進小黑屋喔~

評論

Alex_160216

Alex_160216

2021年8月4日
將 Yocto 專案內的 OpenCV 4.0.1 改成 OpenCV 3.4 下載 WPI 提供的設定檔,並取代 Yocto 專案原有的檔案後,再編譯映像檔,會產生錯誤訊息:Fetcher failure for URL : 'file://fixpkgconfig.patch'. Unable to fetch URL from any source. 請問一下:是否還少"fixpkgconfig.patch" 這個檔案? 請問哪裡可以找到這個檔? 謝謝。