Skip to content

LIPSedge AT

Tim Cheng edited this page Aug 12, 2024 · 23 revisions

LIPSedge AT User Guide

Table of Contents

Introduction

LIPS is a leading company in Taiwan specialized in Time-of-Flight (ToF) and Stereo vision technology including middleware and hardware ranging from consumer to industrial products such as 3D Scanning, 3D Surveillance, Gaming, Smart TVs, Biometric Recognition, Robotics,…etc. We have two different model for different user. See more introduction in

This Wiki is for the user who

  • Already has a LIPS 3D camera, LIPSedge AT, on hand and want to run example program.
  • OR want to develop application with LIPS 3D depth camera.
  • The target platform is Linux
  • Develop application with OpenNI 1.5

If you don't have one and are interesting with it, please contact with us by e-mail info@lips-hci.com

Note If you are the user of LIPSedge DL, please see the LIPSedge DL wiki page.

Environment Setup

This section describes how to connect the LIPSedge AT and use it.

Terminal connection via UART-USB

Users can use terminal interface to operate Linux of LIPSedge AT via the UART-USB port on it.

  • Connect UART-USB in LIPSedge AT with PC-USB port

AT Ports

Note

Not on the SW1 and SW3: make sure the switches SW1 and SW3 are in the off status. Switches on AT

  • Connect LIPSedge AT to the ethernet which is under DHCP service.
  • Use terminal tool, like TeraTerm, to connect LIPSedge AT Linux console.

Note

UART Setup is 115200 and 8n1 as the following picture.

UART Setup

  • Login into Linux in LIPSedge AT. If you need the login account and password, please contact with us by info@lips-hci.com.

Login Page in AT

  • Use ifconfig to check IP address of LIPSedge AT.

  • To change IP address, e.g. 192.168.0.10, use ifconfig command:

root@cyclon5:~# ifconfig eth0 192.168.0.10 netmask 255.255.255.0
  • You can do any operation on it just like using common Linux-like system

Data transfer via ethernet

  • Use FTP client, like Filezilla, to connet the FTP server on LIPSedge AT. If you need the login account and password, please contact with us by info@lips-hci.com.

AT Ports

Note

Before do that, you should get the IP address first. See Terminal connection via UART-USB.

  • Send file into LIPSedge AT via FTP.

Run Example Program

Run NiRecorder

NiRecorder is a sample program to record depth data and RGB data into a .oni file. It record 100 frames in every executing. For developer, it is a easy way to verify sensor work or not. You can execute the command:

./NiRecorder

Note: The NiRecorder should run on LIPSedge AT.

Then you can get a recording.oni file in the same directory. The recording.oni can be playbacked by NiViewer.exe in Windows/Linux.

Run UDP server

Before running NiUDPServer on LIPSedge AT, the LIPSedge AT need connect via ethernet to the client, which should be a PC and ready to run "UDP receiver". And you must exactly know client's IP address. For example, if client's IP address is 192.168.1.2, you need execute the command:

./NiUDPServer 192.168.1.2

Note: The NiUDPServer should run on LIPSedge AT.

Run UDP receiver

For running NiUDPClient on PC, you need pre-install OpenCV. And you also need to know server's IP address. For example, server's IP address is 192.168.1.10:

./NiUDPClient 192.168.1.10

Develop for PC Application

Supported Linux Distribution

  • Ubuntu 14.04 or later

Update and upgrade apt

Makesure all needed tool for the following installation can be found. You can run apt update and upgrade first.

sudo apt-get update
sudo apt-get upgrade

Install OpenCV

OpenCV is a famous computer vision library that LIPS SDK need.

  • Install required packages for building OpenCV 2.
sudo apt-get install cmake pkg-config libgtk2.0-dev
  • Download OpenCV 2.4.11 Linux version source code from here.

  • Extract and enter OpenCV root folder, for example

cd ~/opencv-2.4.11
  • Create a folder for cmake and change directory to it, for example,
mkdir build && cd build
  • Enter following command to generate cmake files
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..
  • Once generation is done, enter make command to start the build
make
  • Then, install OpenCV to your system, administrator permission may required.
sudo make install

Install Git

sudo apt-get install git-core

Download sample code

Download the project into the SDK folder via Git clone form this repository.

git clone https://github.com/lips-hci/openni_linux.git LIPS_Sample

Build Samples

Build NiUDPClient

cd LIPS_Sample/NiUDPClient
CXX=g++ make

Build your own application

You can base the samples we provided to develop your own application. What you need to know to edit Makefile are:

  • Append the source files' name to SRC
  • According the path related to SDK, modify the CPPFLAGS and LDFLAGS appropriately. i.e., you man need to add -I and -L to the correct location.
  • You can also use Clang to compile your application by change CXX from g++ to clang.

Develop for ARM Platform Application

Setup docker for developing ARM application

Since LIPSedge AT is ARM-based CPU architecture platform, we suggest to use [docker] (https://www.docker.com/) to develop the application to save the time of establishing a cross-compile OpenNI-installed environment. Developers could pull the image from Docker Hub by following command

docker pull lips/aarch32_openni

Be noted, please install QEMU to emulate ARM CPU architecture on your work station, like the commands below:

apt-get install qemu qemu-user-static binfmt-support
update-binfmts --enable qemu-arm

Then you could use 'docker run' command to launch the container

docker run -it -v /usr/bin/qemu-arm-static:/usr/bin/qemu-arm-static lips/aarch32_openni /bin/bash

Build samples in docker

Please refer the section "Download LIPS Sample Code" to download sample code from github, and modify the compile flags defined in Makefile, i.e., modify CPPFLAGS and LDFLAGS from

-I../../Include
-L../../Lib

to

-I/usr/include/ni
-L/usr/lib

Then compile the source in the same way

CXX=g++ make

Build NiRecorder

cd LIPS_Sample/NiRecorder
CXX=g++ make

Build NiUDPServer

cd LIPS_Sample/NiUDPServer
CXX=g++ make