C++/QT app with OpenCV, improvements and new features
Budget: €250 – €750 EUR
C++/QT developer (preferably with expertise in OpenCV also) needed for an improving and adding new features into existing cross platform application. An app depends on OpenCV and should be compiled for Nvidia Jetson Nano AI computer running Ubuntu 18 and x86 PC as well running Windows 10.
TASKS
1. Using mouse clicks onto the QLabel, implement an ability to define polygon (triangle or rectangle) and it needs to be defined using mouse clicks and saved into Config.json. What shape is going to be defined should be selectable from UI dropdownlist. One of the options should be to disable “define-mode” to avoid clicking by mistake.
Right now, single line definition is implemented triggering: QLabel::mousePressEvent(QMouseEvent *ev)
2. Count objects by their type and direction when they enter or leave the polygon. Function should fit inside current functions through which objects are counted as soon they pass the simple defined line.
3. On Jetson Nano with IP camera connected, app consumes cca. 1 GB of memory, can it be optimized?
When FrameReaderThread reads a frame it makes: VecFrameBuffer.push_back(Mat frame);
An another DetectorThread has a loop where it reads and erases the frame.
Camera sends 12 FPS, detector’s thread needs 50 ms to analyze a single frame and buffer seems to be emptied correctly but RAM still has high usage.
4. Program compiled on one Jetson Nano does not work on another, although OS-es are from the same clone. It should be corrected and correction sent in form of scripts or explanatory doc. To make it work: now I have to compile again from the same source on another device.
5. Possibility to run terminal version of a program without GUI (in Linux headless mode) setting a new flag in Config.json ?
6. Run two or three cameras at the same time inside different detection- and (maybe) read- threads
TASKS
1. Using mouse clicks onto the QLabel, implement an ability to define polygon (triangle or rectangle) and it needs to be defined using mouse clicks and saved into Config.json. What shape is going to be defined should be selectable from UI dropdownlist. One of the options should be to disable “define-mode” to avoid clicking by mistake.
Right now, single line definition is implemented triggering: QLabel::mousePressEvent(QMouseEvent *ev)
2. Count objects by their type and direction when they enter or leave the polygon. Function should fit inside current functions through which objects are counted as soon they pass the simple defined line.
3. On Jetson Nano with IP camera connected, app consumes cca. 1 GB of memory, can it be optimized?
When FrameReaderThread reads a frame it makes: VecFrameBuffer.push_back(Mat frame);
An another DetectorThread has a loop where it reads and erases the frame.
Camera sends 12 FPS, detector’s thread needs 50 ms to analyze a single frame and buffer seems to be emptied correctly but RAM still has high usage.
4. Program compiled on one Jetson Nano does not work on another, although OS-es are from the same clone. It should be corrected and correction sent in form of scripts or explanatory doc. To make it work: now I have to compile again from the same source on another device.
5. Possibility to run terminal version of a program without GUI (in Linux headless mode) setting a new flag in Config.json ?
6. Run two or three cameras at the same time inside different detection- and (maybe) read- threads