C6678 objectTracking
1.0.0
This document provides a step by step procedure to run this project.
This project contains 3 portions.
This is a simple C++,C program that Reads video from a connected USB web camera ,splits the video frame in to chunks of 1024 bytes. Then adds header information(packet number) encoded in last two bytes of the packet. And sends the data over to C6678 by opening a UDP connection.
-D OPENCV_GENERATE_PKGCONFIG=ON
This ensures that you can use pkg-config --cflags --libs opencv4
in the Makefile.#define SERVER_IP "10.107.2.126
to give any ip address which you can acess, or add the same address in C6678 and connect C6678 directly to PC#define PORT 7
. You might have to have sudo permission to use this port. Change the port to some number greater than 1024 to avoid using sudomake
, make clean
to clean all the build files .sudo ui
in the terminalVideoCapture vidIn(1);
you can find out the connected camera number by the stub file for video /dev/video1
or /dev/video2
created once the camera is plugged infd = open("/dev/ttyACM0",O_RDWR | O_NOCTTY | O_NDELAY);
Code for serial communication was taken from github repository xanthium-eneterprisesProjects->Import CCS Projects
, select the project in ti/mcsdk_2_01_02_05/examples/ndk/helloWorld/
ti/ccsv5/ccs_base/emulation/boards/evmc6678l/gel/evmc6678l.gel
to core 0main()
function in helloWorld.c file. You will have to add $IMG_LIB_ROOT to your build path if you are using thetcpdump
is a cooler option* Unless you dont know exactly what you are doing, dont use semaphores. Semaphores are used for mutual exclusion of two tasks. But in most of the cases, we want the threads to run in parallel.
* Dont use blocking calls inside tasks
* .y files given by TI are simple binary files, you dont need a special software for that you can write a simple c code for binary file manipulation, or use matlab/octave for the same. Octave file is given in this repository.
* check and make sure that you have matching image dimensions everywhere.To avoid redefinition, in most places we use the `extern` keyword in c file.