Skip to content

Commit 58d3b6c

Browse files
Documentation updated. Submodules updated
1 parent 89e3a71 commit 58d3b6c

File tree

7 files changed

+33
-32
lines changed

7 files changed

+33
-32
lines changed

3rdparty/ConfigReader

3rdparty/Frame

279 KB
Binary file not shown.

README.md

Lines changed: 28 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
![object_detector_web_logo](_static/object_detector_web_logo.png)
1+
![object_detector_web_logo](./static/object_detector_web_logo.png)
22

33

44

55
# **ObjectDetector interface C++ library**
66

7-
**v1.7.1**
7+
**v1.7.2**
88

99

1010

@@ -44,7 +44,7 @@
4444

4545
# Overview
4646

47-
**ObjectDetector** C++ library provides standard interface, but also defines data structures and rules for different object detectors (motion detectors, events detectors, neural networks etc.). **ObjectDetector** interface class does not do anything, just provides interface, defines data structures and provides methods to encode/decode commands and encode/decode (serialize/deserialize) parameters. Different object detector classes inherit interface form **ObjectDetector** C++ class. **ObjectDetector.h** file contains [ObjectDetectorCommand](#objectdetectorcommand-enum) enum (provides enum of action commands), [ObjectDetectorParam](#objectdetectorparam-enum) enum (provides enum of params), [ObjectDetectorParams](#objectdetectorparams-class-description) class (contains list of params) and includes [ObjectDetector](#objectdetector-class-declaration) class declaration. All object detectors should include params and commands listed in **ObjectDetector.h** file. **ObjectDetector**class depends on two external libraries (included as submodules): [Frame](https://github.com/ConstantRobotics-Ltd/Frame) (video frame data structure, source code included, Apache 2.0 license) and [ConfigReader](https://github.com/ConstantRobotics-Ltd/ConfigReader) (provides methods to read/write JSON config files, source code included, Apache 2.0 license). It uses C++17 standard. The library is licensed under the **Apache 2.0** license.
47+
**ObjectDetector** C++ library provides standard interface as well defines data structures and rules for different object detectors (motion detectors, events detectors, neural networks etc.). **ObjectDetector** interface class does not do anything, just provides interface, defines data structures and provides methods to encode/decode commands and encode/decode (serialize/deserialize) parameters. Different object detector classes inherit interface form **ObjectDetector** C++ class. **ObjectDetector.h** file contains [ObjectDetectorCommand](#objectdetectorcommand-enum) enum (provides enum of action commands), [ObjectDetectorParam](#objectdetectorparam-enum) enum (provides enum of params), [ObjectDetectorParams](#objectdetectorparams-class-description) class (contains list of params) and includes [ObjectDetector](#objectdetector-class-declaration) class declaration. All object detectors should include params and commands listed in **ObjectDetector.h** file. **ObjectDetector** class depends on two external libraries (included as submodules): [Frame](https://rapidpixel.constantrobotics.com/docs/service-libraries/frame.html) (video frame data structure, source code included, Apache 2.0 license) and [ConfigReader](https://rapidpixel.constantrobotics.com/docs/service-libraries/config-reader.html) (provides methods to read/write JSON config files, source code included, Apache 2.0 license). It uses C++17 standard. The library is licensed under the **Apache 2.0** license.
4848

4949

5050

@@ -65,6 +65,7 @@
6565
| 1.6.1 | 14.12.2023 | - Virtual destructor added.<br />- Frame class updated. |
6666
| 1.7.0 | 08.01.2024 | - List of objects class names added to ObjectDetectorParams.<br />- Data structures updated.<br />- Added automatic linux build check based on GitHub Actions. |
6767
| 1.7.1 | 25.03.2024 | - Frame class updated.<br />- ConfigReader class updated.<br />- Documentation updated. |
68+
| 1.7.2 | 20.05.2024 | - Frame class updated.<br />- ConfigReader class updated.<br />- Documentation updated. |
6869

6970

7071

@@ -73,26 +74,26 @@
7374
The **ObjectDetector** library is a CMake project. Library files:
7475

7576
```xml
76-
CMakeLists.txt ----------------------- Main CMake file of the library.
77-
3rdparty ----------------------------- Folder with third-party libraries.
78-
CMakeLists.txt ------------------- CMake file to include third-party libraries.
79-
ConfigReader --------------------- Source code of the ConfigReader library.
80-
Frame ---------------------------- Source code of the Frame library.
81-
example ------------------------------ Folder with custom (example) object detector class.
82-
CMakeLists.txt ------------------- CMake file for custom object detector class.
83-
CustomObjectDetector.cpp --------- C++ implementation file.
84-
CustomObjectDetector.h ----------- Header with class declaration.
85-
CustomObjectDetectorVersion.h ---- Header file which includes class version.
86-
CustomObjectDetectorVersion.h.in - CMake service file to generate version file.
87-
test --------------------------------- Folder with test of data structures.
88-
CMakeLists.txt ------------------- CMake file for test application.
89-
main.cpp ------------------------- Source code file of test application.
90-
src ---------------------------------- Folder with source code of the library.
91-
CMakeLists.txt ------------------- CMake file of the library.
92-
ObjectDetector.cpp --------------- C++ implementation file.
93-
ObjectDetector.h ----------------- Header file with class declaration.
94-
ObjectDetectorVersion.h ---------- Header file with class version.
95-
ObjectDetectorVersion.h.in ------- CMake service file to generate version file.
77+
CMakeLists.txt ------------------------ Main CMake file of the library.
78+
3rdparty ------------------------------ Folder with third-party libraries.
79+
CMakeLists.txt -------------------- CMake file to include third-party libraries.
80+
ConfigReader ---------------------- Folder width ConfigReader library source code.
81+
Frame ----------------------------- Folder with Frame library source code.
82+
example ------------------------------- Folder with example object detector class.
83+
CMakeLists.txt -------------------- CMake file for custom object detector class.
84+
CustomObjectDetector.cpp ---------- C++ implementation file.
85+
CustomObjectDetector.h ------------ Header with class declaration.
86+
CustomObjectDetectorVersion.h ----- Header file which includes class version.
87+
CustomObjectDetectorVersion.h.in -- CMake service file to generate version file.
88+
test ---------------------------------- Folder with test of data structures.
89+
CMakeLists.txt -------------------- CMake file for test application.
90+
main.cpp -------------------------- Source code file of test application.
91+
src ----------------------------------- Folder with source code of the library.
92+
CMakeLists.txt -------------------- CMake file of the library.
93+
ObjectDetector.cpp ---------------- C++ implementation file.
94+
ObjectDetector.h ------------------ Header file with class declaration.
95+
ObjectDetectorVersion.h ----------- Header file with class version.
96+
ObjectDetectorVersion.h.in -------- CMake service file to generate version file.
9697
```
9798

9899

@@ -178,7 +179,7 @@ cout << "ObjectDetector class version: " << ObjectDetector::getVersion() << endl
178179
Console output:
179180

180181
```bash
181-
ObjectDetector class version: 1.7.1
182+
ObjectDetector class version: 1.7.2
182183
```
183184

184185

@@ -284,7 +285,7 @@ virtual bool detect(cr::video::Frame& frame) = 0;
284285

285286
| Parameter | Description |
286287
| --------- | ------------------------------------------------------------ |
287-
| frame | Video frame for processing. Object detector processes only RAW pixel formats (BGR24, RGB24, GRAY, YUYV24, YUYV, UYVY, NV12, NV21, YV12, YU12, see [Frame](https://github.com/ConstantRobotics-Ltd/Frame) class description). Required pixel format depends on implementation. It is recommended to support all possible RAW pixel formats supported by [Frame](https://github.com/ConstantRobotics-Ltd/Frame) object. |
288+
| frame | Video frame for processing. Object detector processes only RAW pixel formats (BGR24, RGB24, GRAY, YUYV24, YUYV, UYVY, NV12, NV21, YV12, YU12, see [Frame](https://rapidpixel.constantrobotics.com/docs/service-libraries/frame.html) class description). Required pixel format depends on implementation. It is recommended to support all possible RAW pixel formats supported by [Frame](https://rapidpixel.constantrobotics.com/docs/service-libraries/frame.html) object. |
288289

289290
**Returns:** TRUE if the video frame was processed or FALSE if not. If object detector disabled (see [ObjectDetectorParam](#objectdetectorparam-enum) enum description) the method should return TRUE.
290291

@@ -300,7 +301,7 @@ virtual bool setMask(cr::video::Frame mask) = 0;
300301
301302
| Parameter | Description |
302303
| --------- | ------------------------------------------------------------ |
303-
| mask | Detection mask is see [Frame](https://github.com/ConstantRobotics-Ltd/Frame) object with GRAY pixel format. Detector omits image segments, where detection mask pixel values equal 0. |
304+
| mask | Detection mask is see [Frame](https://rapidpixel.constantrobotics.com/docs/service-libraries/frame.html) object with GRAY pixel format. Detector omits image segments, where detection mask pixel values equal 0. |
304305
305306
**Returns:** TRUE if the detection mask was set or FALSE if not.
306307
@@ -588,7 +589,7 @@ struct Object
588589

589590
## ObjectDetectorParams class declaration
590591

591-
**ObjectDetectorParams** class used for object detector initialization (**initObjectDetector(...)** method) or to get all actual params (**getParams()** method). Also **ObjectDetectorParams** provides structure to write/read params from JSON files (**JSON_READABLE** macro, see [**ConfigReader**](https://github.com/ConstantRobotics-Ltd/ConfigReader) class description) and provide methods to encode (serialize) and decode (deserialize) params. Class declaration:
592+
**ObjectDetectorParams** class used for object detector initialization (**initObjectDetector(...)** method) or to get all actual params (**getParams()** method). Also **ObjectDetectorParams** provides structure to write/read params from JSON files (**JSON_READABLE** macro, see [ConfigReader](https://rapidpixel.constantrobotics.com/docs/service-libraries/config-reader.html) class description) and provide methods to encode (serialize) and decode (deserialize) params. Class declaration:
592593

593594
```cpp
594595
class ObjectDetectorParams

src/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ cmake_minimum_required(VERSION 3.13)
66
## LIBRARY-PROJECT
77
## name and version
88
###############################################################################
9-
project(ObjectDetector VERSION 1.7.1 LANGUAGES CXX)
9+
project(ObjectDetector VERSION 1.7.2 LANGUAGES CXX)
1010

1111

1212

src/ObjectDetectorVersion.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,6 @@
22

33
#define OBJECT_DETECTOR_MAJOR_VERSION 1
44
#define OBJECT_DETECTOR_MINOR_VERSION 7
5-
#define OBJECT_DETECTOR_PATCH_VERSION 1
5+
#define OBJECT_DETECTOR_PATCH_VERSION 2
66

7-
#define OBJECT_DETECTOR_VERSION "1.7.1"
7+
#define OBJECT_DETECTOR_VERSION "1.7.2"

0 commit comments

Comments
 (0)