sewon.oh [Thu, 18 Oct 2018 02:28:48 +0000 (11:28 +0900)]
[git ignore] Add list for test generated files.
It is trivial. Edit git ignore lists for test generated files.
Signed-off-by: sewon.oh <sewon.oh@samsung.com>
jijoong.moon [Mon, 15 Oct 2018 01:12:13 +0000 (10:12 +0900)]
[TensorMerge] Add Proper GstMemory Generation according to direction
Add gst_tensor_merge_generate_mem function to generate output
GstMemory to push.
Now support linear mode and channel, width, height option.
Assume tensor a is aC:aW:aH:aB and b is bC:bW:bH:bB.
if the mode is linear and channel option,
the output tensor is generated by
aC+bC:aW:aH:aB ( should be aH==bH, aW==bW and a.type==b.type ).
That means,
[[aB][aH][aW][aC,bC]]
if linear and width option,
aC:aW+bW:aH,aB ( should be aC==bC, aH==bH and a.type==b.type ).
[[aB][aH][aW,bW][aC]]
if linear and height option
aC:aW:aH+bH,aB (should be aC==bC, aW==bW and a.type==b.type ).
[[aB][aH,bH][aW][aC]]
Signed-off-by: jijoong.moon <jijoong.moon@samsung.com>
Jaeyun Jung [Tue, 16 Oct 2018 15:29:21 +0000 (00:29 +0900)]
[Aggregator] add condition to flush the bytes
add condition to check flush-size (when sets large value to flush the data)
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Wed, 17 Oct 2018 04:38:03 +0000 (13:38 +0900)]
[Test] update stream testcase
1. add stream test for tensor-aggregator usecase
2. set duration for text/byte stream buffer
3. check invalid buffer in data callback
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Tue, 16 Oct 2018 11:26:05 +0000 (20:26 +0900)]
[Converter/Aggregator] update timestamp
1. set timestamp at first frame
2. add duration in output buffer
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
HyoungjooAhn [Tue, 16 Oct 2018 07:46:55 +0000 (16:46 +0900)]
[Filter/TF-Lite] apply memcpy for output tensors
memcpy is applied for each output tensors of tflite. it should be just temporal solution and be updated with better way.
Signed-off-by: HyoungjooAhn <hello.ahnn@gmail.com>
sewon.oh [Thu, 20 Sep 2018 07:50:21 +0000 (16:50 +0900)]
[CI] Change folder structure.
change folder name to use config files by copying instead of linking.
Signed-off-by: Sewon Oh sewon.oh@samsung.com
Jaeyun [Mon, 15 Oct 2018 07:00:33 +0000 (16:00 +0900)]
[Mux/Merge] remove unnecessary value
1. remove unnecessary value in pad-data structure
2. add cond to check valid buffer
3. add code to free option string
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
MyungJoo Ham [Tue, 16 Oct 2018 09:31:38 +0000 (18:31 +0900)]
[DIST] Ubuntu/Debian packaging version number
Discard date-based obsolete version number.
Use 0.0.3-1rc1 for the rolling release version.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
MyungJoo Ham [Mon, 15 Oct 2018 11:50:39 +0000 (20:50 +0900)]
[DIST] Clean up Ubuntu build scripts
1. Install the required .a only for Android development
2. Removed unnecessary .so files from being installed
3. Updated description for the dev package to mention that Android developers may use this.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
MyungJoo Ham [Mon, 15 Oct 2018 10:22:05 +0000 (19:22 +0900)]
[DIST] Update build scripts
1. (RPM/Tizen) Install related .a files for devel package
2. (CMake) Fix INCLUDE_INSTALL_DIR warning
3. (CMake) Rename ${NAME}Static.a to ${NAME}.a
4. (CMake) Remove meaningless "TARGET_LINK_LIBRARIES" for static libraries
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
MyungJoo Ham [Mon, 15 Oct 2018 09:21:30 +0000 (18:21 +0900)]
[0.0.3-rc1] Single-binary is now the stndard release.
From 0.0.3, single-binary release is the standard.
We start 0.0.3-rc1 with this commit.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
MyungJoo Ham [Mon, 15 Oct 2018 08:06:02 +0000 (17:06 +0900)]
Release 0.0.2
All test passed with 0.0.2 rc1.
This is the release for 2018.10.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
jinhyuck-park [Mon, 15 Oct 2018 02:05:50 +0000 (11:05 +0900)]
[Testcase]Add test case for tensor decoder image labelling
Add test case for tensor decoder for image labelling
Signed-off-by: jinhyuck-park <jinhyuck83.park@samsung.com>
MyungJoo Ham [Sat, 13 Oct 2018 07:23:15 +0000 (16:23 +0900)]
[Release] 0.0.2-rc1
If this passes all the release test, this will become 0.0.2 stable.
(Along with the pending PRs)
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
MyungJoo Ham [Sat, 13 Oct 2018 12:31:29 +0000 (21:31 +0900)]
[Documentation] Update component description
1. Fix URL errors
2. Update component info as we have a lot of changes with v0.0.2
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
MyungJoo Ham [Sat, 13 Oct 2018 07:14:21 +0000 (16:14 +0900)]
[Utility] For demo, create a shell script loading model/label
For the demonstration, provide a shell script that gets
the standard example tflite model and its labeling file
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
MyungJoo Ham [Fri, 12 Oct 2018 13:20:42 +0000 (22:20 +0900)]
[Single Binary] Merge all elements into a single plugin binary
Now we have all nnstreamer elements in a single plugin binary.
Note that enabling tensorflow, which is WIP, will break the result.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
MyungJoo Ham [Fri, 12 Oct 2018 07:02:00 +0000 (16:02 +0900)]
[Single Binary] Merge decoder, demux
1. Merge decoder,demux for the new build scheme.
2. Rephrase related code of aggregator, converter
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
MyungJoo Ham [Sat, 13 Oct 2018 07:04:22 +0000 (16:04 +0900)]
[Common] move common c files to gst/nnstreamer
Use /common/ for common utilities, not source files
Use /gst/nnstreamer/ for common source files.
This will make it easier to be upstreamed to GST communities later.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
MyungJoo Ham [Sat, 13 Oct 2018 06:52:55 +0000 (15:52 +0900)]
[Cmake/CleanUp] Clean up cmake main logic
1. Disable tensorflow by default. Enable it when tensorflow support is completed.
2. Dismangled tizen/gtest dependency logic
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
jijoong.moon [Fri, 12 Oct 2018 00:20:59 +0000 (09:20 +0900)]
[TensorMerge] fix Dereference before null check
Fix the derefrencing bug before null check
**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped
Signed-off-by: jijoong.moon <jijoong.moon@samsung.com>
Jaeyun [Thu, 11 Oct 2018 10:36:08 +0000 (19:36 +0900)]
[Transform/Common] code clean
1. use common functions and structure in tensor-transform
2. add macros to print debug message
3. remove functions to parse caps (get_tensor_from_padcap, get_tensor_from_structure in common)
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
MyungJoo Ham [Thu, 11 Oct 2018 08:38:15 +0000 (17:38 +0900)]
[Single Binary] Merge converter and aggregator into a single plugin binary
This is a pilot program for #628
We are going to merge all nnstreamer plugins into one single plugin binary.
Use -DSINGLE_BINARY to generate a single plugin binary with all plugin elements.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Wook Song [Thu, 11 Oct 2018 07:11:59 +0000 (16:11 +0900)]
[Transform/Arithmetic/Test] Add test cases for add-mul and mul-add
This patch adds test cases for testing newly added operators, add-mul
and mul-add.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Thu, 11 Oct 2018 06:58:16 +0000 (15:58 +0900)]
[Transform/Arithmetic/Test] Update test checking API for fused operators
This patch updates the test checking API to support the fused add-mul
and fused mul-add operators. According to this change, the existing
tests are slightly modified as well.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Thu, 11 Oct 2018 06:53:55 +0000 (15:53 +0900)]
[Transform/Arithmetic] Support fused add-mul and mul-add operators
This patch adds two operators, fused add-mul and fused mul-add, to the
Arithmetic mode of the transform plugin.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Thu, 11 Oct 2018 01:19:29 +0000 (10:19 +0900)]
[Transform/Arithmetic/Test] Add test cases for floating-point operand
This patch adds more test cases for testing the Arithmetic mode of the
Transform plug-in with floating-point operands.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Wed, 10 Oct 2018 08:05:08 +0000 (17:05 +0900)]
[Transform/Arithmetic] Support operand value of floating point type
Since the data type of the operand is fixed to 'int64_t', the Arithmetic
mode cannot properly handle operand values of the floating point type
such as 2.3, -10.5, and -9.900000e-001. This patch supports such
floating-point operand values by using the data type, double.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Jaeyun [Fri, 12 Oct 2018 03:41:09 +0000 (12:41 +0900)]
[Sink] code clean
add function prefix to prepare single bin
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Fri, 12 Oct 2018 05:48:39 +0000 (14:48 +0900)]
[Common] check max tensor size limit
update code to check array size limit, tensors max is now 16.
Related issue : #635
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
jinhyuck-park [Fri, 12 Oct 2018 06:11:24 +0000 (15:11 +0900)]
[Example App]Add tensor decoder image labelling App
Add tensor decoder image labelling app
only use gst sub plugins including tensor decoder
Signed-off-by: jinhyuck-park <jinhyuck83.park@samsung.com>
jinhyuck-park [Thu, 11 Oct 2018 22:18:38 +0000 (07:18 +0900)]
[TensorDec] update tensor decoder for proper working
Update tensor decoder for proper working
set caps and some minor updates
Signed-off-by: jinhyuck-park <jinhyuck83.park@samsung.com>
jijoong.moon [Mon, 8 Oct 2018 04:54:03 +0000 (13:54 +0900)]
[Transform] Fix transpose
There was wrong tensro and C array index.
Batch should be last index.
Before this patch, the batch is the first index of C array or Tensor.
**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped
Signed-off-by: jijoong.moon <jijoong.moon@samsung.com>
Wook Song [Fri, 5 Oct 2018 05:59:37 +0000 (14:59 +0900)]
[Test/Transform] Add test cases for typecast between float and integer
This patch adds more test cases for testing the typecast operation
between floating point types and integer types.
Signed-off-by: Wook Song <wook16.song@samsung.com>
jijoong.moon [Tue, 2 Oct 2018 06:22:47 +0000 (15:22 +0900)]
[TensorMerge] Add draft tensor_merge plugin
we need tensor_merge to merge tensor. It make multiple tensor into
single tensor. After this PR, C:W:H:B ([B][H][W][C]) +
C:W:H:B ([B][H][W][C]) --> W:H:2xC:B ([B][2xC][H][W]).
Therefore, if you want to use this as input for tensorflow lite, you
may need transform element,
with transpose mode. ( mode=transpose, option=2:0:1:3. It produce
2xC:W:H:B ([B][H][W][2xC]).
**Changes proposed in this PR:**
- Added Tensor merge plugin
**TODO**
- Add Multiple direction merge : Width, Height or mixed.
- Better handling to reduce memcopy.
**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped
Signed-off-by: jijoong.moon <jijoong.moon@samsung.com>
jijoong.moon [Tue, 9 Oct 2018 23:34:50 +0000 (08:34 +0900)]
[Transform] Add Test Case for transform/standardization mode
Add Test Case for standardization mode.
Compare the result with python and approval diff is
-0.01 < diff < 0.01. (application/octet-stream mime is used.)
**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped
Signed-off-by: jijoong.moon <jijoong.moon@samsung.com>
Jaeyun [Wed, 10 Oct 2018 11:54:45 +0000 (20:54 +0900)]
[Aggregator] update code to concatenate data with axis
update data concatenation for the axis (frames-dim)
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
MyungJoo Ham [Mon, 8 Oct 2018 07:10:00 +0000 (16:10 +0900)]
[Comment Fix] Fix broken URLs in comments / docs
There have been old URLs that cannot be accessed.
Fix them all.
There are a few off-topic changes due to recently enforced
coding style/rule of CI/CD system.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Jaeyun [Wed, 10 Oct 2018 04:23:10 +0000 (13:23 +0900)]
[Aggregator] update code to concatenate output
1. add property concat (default true, to do the concatenation)
2. add functions to check dimension before pushing the buffer into source pad
TODO : update concat code with the axis
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
MyungJoo Ham [Fri, 28 Sep 2018 03:54:10 +0000 (12:54 +0900)]
[CoC Update] Update due to recent turmoil at LKML
The COC we are based on appears to be based on postmeritocracy with political intentions.
Before moving on the the official nnsuite CoC, I suggest to use this temporarily updated one.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Jaeyun [Wed, 10 Oct 2018 04:29:42 +0000 (13:29 +0900)]
[Test] update stream testcase
1. add tc to change dimension in output tensor (tensor-aggregator)
2. change output dimension for octet-stream (tensor-converter)
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
jijoong.moon [Thu, 4 Oct 2018 07:32:35 +0000 (16:32 +0900)]
[Transform] Add Standardization Mode in Tranform Plugin
Add Standardization Mode (mode=stand, option=default). Could be added
more methods.
for Tensor T,
: out[i] = fabs((T[i] - average(T)) / (stand(T) + 1e-10))
**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped
Signed-off-by: jijoong.moon <jijoong.moon@samsung.com>
jijoong.moon [Wed, 10 Oct 2018 02:00:34 +0000 (11:00 +0900)]
[Transform] Remove hard coded values in transform
Use NNS_TENSOR_RANK_LIMIT instead of 4 for transpose.
Resolves: #537
**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped
Signed-off-by: jijoong.moon <jijoong.moon@samsung.com>
Jaeyun [Wed, 10 Oct 2018 02:18:37 +0000 (11:18 +0900)]
[Converter] fix coverity issue 1034478
1. add condition to check frame size (divide by zero)
2. remove debug message (unnecessary to print frames)
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Mon, 8 Oct 2018 04:18:18 +0000 (13:18 +0900)]
[Aggregator] fix out-tensor dimension
update output dimension with the properties frames-dim, frames-out.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Mon, 8 Oct 2018 03:50:13 +0000 (12:50 +0900)]
[Converter] support byte-stream
add new properties input-dim and input-type to get tensor info from byte-stream (application/octet-stream)
add testcase for byte-stream
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Thu, 4 Oct 2018 07:36:58 +0000 (16:36 +0900)]
[Common] initial commit to add a type of byte-stream
1. define new type for byte-stream (application/octet-stream)
2. refactor functions to get tensor config
TODO: need to update tensor-converter later
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Tue, 2 Oct 2018 12:12:28 +0000 (21:12 +0900)]
[Converter/Aggregator] update timestamp
set timestamp with distance (bytes from pts)
if frames-in is larger than frames-out, it will set same timestamp.
in this case, elements update timestamp with distance.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
jinhyuck-park [Thu, 4 Oct 2018 06:18:13 +0000 (15:18 +0900)]
[TensorDec] Add install properties in tensor decoder init
Add install properties mode and mode-option-1 for tensor decoder
processing image labeling
Signed-off-by: jinhyuck-park <jinhyuck83.park@samsung.com>
Jaeyun [Thu, 4 Oct 2018 07:46:29 +0000 (16:46 +0900)]
[Example] change plugin to get scaled video frame from v4l2
1. change to videoscale to set 640x480 frame
2. remove framerate in caps filter
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
MyungJoo Ham [Thu, 4 Oct 2018 05:23:35 +0000 (14:23 +0900)]
[SVACE-Fix] Fix 376961 / str without termination
Fixed error: WID:
57241610 Copying from string 'label' to 'out_info.data' without null termination at tensordec.c:743 by calling function 'strncpy'.
Reference: https://stackoverflow.com/questions/1453876/why-does-strncpy-not-null-terminate
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Jaeyun [Thu, 4 Oct 2018 02:36:29 +0000 (11:36 +0900)]
[Common] update condition to validate tensor config
update condition about framerate, denominator should be larger than 0.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Tue, 2 Oct 2018 12:52:47 +0000 (21:52 +0900)]
[Mux/Decoder] fix coverity issue
fix coverity issue 1030251, 1030250 in tensor-decoder and tensor-mux
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Tue, 2 Oct 2018 05:59:56 +0000 (14:59 +0900)]
[Demux/Transform] add code to free string
add code to free the array of strings
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Tue, 2 Oct 2018 04:28:09 +0000 (13:28 +0900)]
[Split] remove rank and fix mem leak
1. remove rank in caps and use common structure to get tensor caps
2. add code to free the array of strings
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
jinhyuck-park [Tue, 2 Oct 2018 04:49:49 +0000 (13:49 +0900)]
[SVACE] fix CID 1030252, CID 1030251 issues
SVACE issues fix for tensor decoder
Signed-off-by: jinhyuck-park <jinhyuck83.park@samsung.com>
Jaeyun [Tue, 2 Oct 2018 06:29:04 +0000 (15:29 +0900)]
[Test] add stream tc with tensor-split
add stream testcase with tensor-split to check out buffers
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
MyungJoo Ham [Tue, 2 Oct 2018 04:14:05 +0000 (13:14 +0900)]
[example/custom] Fix coverity issue.
Do not check if it's < 0 if it's unsigned.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Jaeyun [Mon, 1 Oct 2018 07:32:37 +0000 (16:32 +0900)]
[Test] add stream testcases
1. stream test for newly added audio format
2. stream test for multi-tensors with tensor-demux
3. add testcase for no signal case from tensor-sink
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Mon, 1 Oct 2018 07:29:36 +0000 (16:29 +0900)]
[Common] expand audio format
add audio format (signed/unsigned 32bit, floating point 32/64bit)
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Mon, 1 Oct 2018 08:17:01 +0000 (17:17 +0900)]
[Document/CodeClean] update description and debug messages
change log messages in tensor-sink
add description for properties and signals in tensor-sink
fix property name in tensor-converter doc
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
jinhyuck-park [Mon, 1 Oct 2018 05:31:18 +0000 (14:31 +0900)]
[tensorDec] Implement copy label string to out buffer
Implement set out buffer with updated image label text
Signed-off-by: jinhyuck-park <jinhyuck83.park@samsung.com>
Jaeyun [Fri, 28 Sep 2018 07:13:58 +0000 (16:13 +0900)]
[Common] change tensor type of string
for text stream, change tensor type to uint8
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Fri, 28 Sep 2018 05:22:35 +0000 (14:22 +0900)]
[Test] update testcases
1. [sink] add flag to check timestamp and failure case
2. [sink] change tensor type of string
3. [common] add testcase for dimension string
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Sangjung Woo [Fri, 28 Sep 2018 07:09:07 +0000 (16:09 +0900)]
[boilerplate] fix broken links
This patch fixes the broken links instead of 'TO-BE-DETERMINED-SOON'
comment on boilerplate code.
Change-Id: I6776096752a5d52829043cd3ab9d9584154752d2
Signed-off-by: Sangjung Woo <sangjung.woo@samsung.com>
Jaeyun [Fri, 28 Sep 2018 04:22:11 +0000 (13:22 +0900)]
[Common] add function to get tensor size
add function to get date size with GstTensorInfo
and refactor elements and examples
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Thu, 27 Sep 2018 12:04:53 +0000 (21:04 +0900)]
[Demux] change default property value
change default property value (set default value true)
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Thu, 27 Sep 2018 12:00:19 +0000 (21:00 +0900)]
[Mux] set timestamp in output buffer
1. add timestamp (pts and dts) in output buffer
2. change default property value (silent true)
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Thu, 27 Sep 2018 10:09:33 +0000 (19:09 +0900)]
[Mux] fix coverity issue (1029508)
Add log message and remove unnecessary state.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Thu, 27 Sep 2018 06:29:15 +0000 (15:29 +0900)]
[Test/Meta] remove dependency of tensor-meta
1. Refactor test plugins to remove tensor-meta.
(these elements are for testing multi-tensors only)
2. Remove unnecessary header in saveload.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Thu, 27 Sep 2018 08:03:18 +0000 (17:03 +0900)]
[Document/Sink] update README.md about tensor-sink
Update README.md file for the element tensor-sink.
Related issue: #490
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
jinhyuck-park [Sat, 22 Sep 2018 05:16:33 +0000 (14:16 +0900)]
[TensorDec] Add functions regarding image labeling in tensor decoder
Add functions regarding image labeling
in tensor decoder
Signed-off-by: jinhyuck-park <jinhyuck83.park@samsung.com>
MyungJoo Ham [Fri, 21 Sep 2018 05:47:00 +0000 (14:47 +0900)]
[Filter/TF-Lite] refactor to reduce repeated code
Let's not repeat the same code for switch cases.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
jijoong.moon [Thu, 20 Sep 2018 02:01:23 +0000 (11:01 +0900)]
[TensorSplit] Fix Tensor dimension type assign
When we write tensor dimension, it should be [C][W][H][B].
But before this PR, it considered C array type [B][H][W][C].
Resolves: #538
**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped
Signed-off-by: jijoong.moon <jijoong.moon@samsung.com>
Wook Song [Fri, 21 Sep 2018 02:33:59 +0000 (11:33 +0900)]
[Example/FilterPerformanceProfile] Fix coverity analysis error 1029509
This patch adds an initialization of a structure variable to fix the
coverity analysis error 1029509: Uninitialized scalar variable.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Fri, 21 Sep 2018 02:28:22 +0000 (11:28 +0900)]
[Example/FilterPerformanceProfile] Fix coverity analysis error 1029505
This patch removes logically dead code, which is duplicated by mistake.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Fri, 21 Sep 2018 02:11:18 +0000 (11:11 +0900)]
[Example/FilterPerformanceProfile] Revise file header comment
This patch revises the file header comment by removing unneeded lines
and fixing a misalignment comment line due to the indentation mistake.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Jaeyun [Fri, 21 Sep 2018 06:30:50 +0000 (15:30 +0900)]
[Mux] remove dependency of tensor-meta
Parse incoming caps of single tensor and push it to tensors config.
After that, make caps for multi-tensors using tensors config.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Fri, 21 Sep 2018 08:26:14 +0000 (17:26 +0900)]
[Test/Decode] remove debug message
remove the property silent in tensor decoder testcase.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Fri, 21 Sep 2018 11:09:51 +0000 (20:09 +0900)]
[Demux/Split] update description
1. change the element classification string
2. remove unnecessary header
3. fix typo and duplicated tag
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
jinhyuck-park [Fri, 21 Sep 2018 06:05:50 +0000 (15:05 +0900)]
[TensorDec] Implement get label function for image labeling
add get label function in tensor decoder transform
Signed-off-by: jinhyuck-park <jinhyuck83.park@samsung.com>
Geunsik Lim [Fri, 21 Sep 2018 04:55:28 +0000 (13:55 +0900)]
Security: fix a buffer overflow issue in gst_tensor_dimension_conversion()
Fixed issue https://github.com/nnsuite/nnstreamer/issues/552.
This commit is to fix a security issue that is reported by CPPCheck and SVACE tool.
**Changes proposed in this PR:**
1. Initialized in and out variable to avoid a buffer overflow issue.
* SVACE Checker:
```bash
BUFFER_OVERFLOW.PROC
Warning Message
Array 'in' of size 16 bytes passed to function 'gst_tensor_dimension_conversion' at tensor_transform.c:968
by passing as 5th parameter to function 'gst_tensor_dimension_conversion' at tensor_transform.c:1016,
where it is accessed by unacceptable index. This may lead to buffer overflow.
Trace Message
buffer overflow
┗ Shift at tensor_transform.c:968
┗ Variable '↦in[0]' is passed to function 'gst_tensor_dimension_conversion' as 5th parameter
at tensor_transform.c:1016 at tensor_transform.c:1016
```
* CPPChecker:
```bash
[gst/tensor_transform/tensor_transform.c:1007]: (error) Uninitialized variable: in
[gst/tensor_transform/tensor_transform.c:1010]: (error) Uninitialized variable: in
[gst/tensor_transform/tensor_transform.c:1018]: (error) Uninitialized variable: in
[gst/tensor_transform/tensor_transform.c:1021]: (error) Uninitialized variable: in
[gst/tensor_transform/tensor_transform.c:1010]: (error) Uninitialized variable: out
[gst/tensor_transform/tensor_transform.c:1013]: (error) Uninitialized variable: out
[gst/tensor_transform/tensor_transform.c:1015]: (error) Uninitialized variable: out
[gst/tensor_transform/tensor_transform.c:1018]: (error) Uninitialized variable: out
```
Signed-off-by: Geunsik Lim <geunsik.lim@samsung.com>
HyoungjooAhn [Fri, 21 Sep 2018 05:25:06 +0000 (14:25 +0900)]
[Filter/TF-Lite] remove memcpy for input tensor
copy data pointer directly rather than the memcpy logic at input tensor
Signed-off-by: HyoungjooAhn <hello.ahnn@gmail.com>
Jaeyun [Fri, 21 Sep 2018 04:08:40 +0000 (13:08 +0900)]
[Example/CustomFilter] fix coverity issue (1029512, 1029504)
fix unsigned compare issue in custom scaler filter
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Thu, 20 Sep 2018 07:40:05 +0000 (16:40 +0900)]
[Example/CustomFilter/Test] change custom passthrough filter
1. change custom passthrough example to support multi tensors
2. add simple stream testcases for multi tensors
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
MyungJoo Ham [Fri, 21 Sep 2018 02:13:41 +0000 (11:13 +0900)]
[Tranform] Fix coverity issue 1029522
unsigned values cannot be <0 checking it whether it's >=0 or not is meaningless
addressing one more item of #558
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
HyoungjooAhn [Thu, 20 Sep 2018 10:56:18 +0000 (19:56 +0900)]
[Filter/TF-Lite] fix bug about nomalization
Since tensor_transform will do typecast and data nomalization, temporal nomalization code is useless.
Signed-off-by: HyoungjooAhn <hello.ahnn@gmail.com>
HyoungjooAhn [Thu, 20 Sep 2018 08:05:58 +0000 (17:05 +0900)]
[Filter] Fix coverity analysis error
1. variable initialization was cleared by last pr(they were removed). 2. make useless line as a comment for future
Signed-off-by: HyoungjooAhn <hello.ahn@samsung.com>
Jaeyun [Thu, 20 Sep 2018 12:48:56 +0000 (21:48 +0900)]
[Demux] remove dependency of tensor-meta
Parse incoming caps of multi-tensors and use configured info to get the tensor.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Sangjung woo [Thu, 20 Sep 2018 08:01:51 +0000 (17:01 +0900)]
[Example] Use tensor_decoder instead of tensordec
This patch uses tensor_decoder instead of tensordec since its name is
changed.
Signed-off-by: Sangjung woo <sangjung.woo@samsung.com>
Sangjung woo [Thu, 20 Sep 2018 07:36:33 +0000 (16:36 +0900)]
[TensorDecoder] Update the plugin information and its testcase
This patch updates the plugin information such as Name, Description when
getting by gst-inspect tool. Moreover, this updates its test case since
the name is changed.
Signed-off-by: Sangjung woo <sangjung.woo@samsung.com>
Sangjung woo [Thu, 20 Sep 2018 07:07:28 +0000 (16:07 +0900)]
[TensorDemux] Update the plugin information and its testcase
This patch updates the plugin information such as Name, Description when
getting by gst-inspect tool. Moreover, this updates its test case since
the name is changed.
Signed-off-by: Sangjung woo <sangjung.woo@samsung.com>
Sangjung woo [Thu, 20 Sep 2018 06:56:37 +0000 (15:56 +0900)]
[TensorMux] Update the plugin information and its testcase
This patch updates the plugin information such as Name, Description when
getting by gst-inspect tool. Moreover, this updates its test case since
the name is changed.
Signed-off-by: Sangjung woo <sangjung.woo@samsung.com>
Sangjung woo [Thu, 20 Sep 2018 06:30:10 +0000 (15:30 +0900)]
[TensorSplit] Update the plugin information and its testcase
This patch updates the plugin information such as Name, Description when
getting by gst-inspect tool. Moreover, this updates its test case since
the name is changed.
Signed-off-by: Sangjung woo <sangjung.woo@samsung.com>
MyungJoo Ham [Thu, 20 Sep 2018 07:29:53 +0000 (16:29 +0900)]
[Example/CustomFilterScaler] Fix coverity analysis error 1029511
Unsigned variables cannot be less than 0.
Do not check if they are less than 0.
Addresses one item of #558.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
MyungJoo Ham [Thu, 20 Sep 2018 04:57:01 +0000 (13:57 +0900)]
[Test/BMP2PN] Fix covertify analysis error 1029514
Integer overflow affecting critical function, coverity issue 1029514 (Github issue #558), is fixed.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Jaeyun [Wed, 19 Sep 2018 12:21:59 +0000 (21:21 +0900)]
[Filter] change filter-framework callbacks
Change framework callbacks to support multi-tensors.
To support multi tensors,
1. GstTensorFilter allocates the memory block for each output tensor.
2. Fill input and output tensor info (GstTensorMemory)
3. GstTensorFilter calls 'invoke' with the structure GstTensorMemory.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Thu, 20 Sep 2018 05:26:58 +0000 (14:26 +0900)]
[Test] update tc for caps and buffer
1. add value for mem blocks in buffer
2. add simple test for tensor config and caps
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
MyungJoo Ham [Wed, 19 Sep 2018 08:10:52 +0000 (17:10 +0900)]
[Transform/Transpose] Check the validity of dimensions
If it is < 0 or >= 4, it is not valid and breaks the buffer.
Supposed to Fix #552
ps. @jijoongmoon : You do not have unit testcases for transpose!
CC: Jijoong Moon <jijoong.moon@samsung.com>
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>