]> rtime.felk.cvut.cz Git - hercules2020/kcf.git/log
hercules2020/kcf.git
5 years agoCorrecting clang error in Travis CL
Shanigen [Fri, 14 Sep 2018 11:17:30 +0000 (13:17 +0200)]
Correcting clang error in Travis CL

5 years agoMerge branch 'master' into rotation
Shanigen [Thu, 13 Sep 2018 19:02:50 +0000 (21:02 +0200)]
Merge branch 'master' into rotation

5 years agoMerge remote-tracking branch 'upstream/master' into rotation
Shanigen [Thu, 13 Sep 2018 18:38:06 +0000 (20:38 +0200)]
Merge remote-tracking branch 'upstream/master' into rotation

Big batch does not work.

5 years agoUnify init messages and add FFT size message
Michal Sojka [Thu, 13 Sep 2018 17:18:17 +0000 (19:18 +0200)]
Unify init messages and add FFT size message

5 years agoUse fixed format for output numbers
Michal Sojka [Thu, 13 Sep 2018 17:11:04 +0000 (19:11 +0200)]
Use fixed format for output numbers

5 years agotest: Show logs when not running on Travis CI
Michal Sojka [Thu, 13 Sep 2018 16:47:58 +0000 (18:47 +0200)]
test: Show logs when not running on Travis CI

5 years agoAdd book sequence to tests
Michal Sojka [Thu, 13 Sep 2018 16:27:28 +0000 (18:27 +0200)]
Add book sequence to tests

5 years agoAdd useful settings into Makefile (as comments)
Michal Sojka [Thu, 13 Sep 2018 16:24:05 +0000 (18:24 +0200)]
Add useful settings into Makefile (as comments)

5 years agoAllow CUDA autodetection with cmake < 3.7
Michal Sojka [Thu, 13 Sep 2018 15:36:52 +0000 (17:36 +0200)]
Allow CUDA autodetection with cmake < 3.7

5 years agoAutodetect CUDA architecture
Michal Sojka [Thu, 13 Sep 2018 15:01:23 +0000 (17:01 +0200)]
Autodetect CUDA architecture

5 years agoDo not require ifdefs when using sqr_norm()
Michal Sojka [Thu, 13 Sep 2018 04:40:35 +0000 (06:40 +0200)]
Do not require ifdefs when using sqr_norm()

5 years agoRevert FHoG::extract changes
Michal Sojka [Wed, 12 Sep 2018 21:57:06 +0000 (23:57 +0200)]
Revert FHoG::extract changes

It's not necessary for this function to know about our threads etc.

5 years agoSimpify init
Michal Sojka [Wed, 12 Sep 2018 21:15:37 +0000 (23:15 +0200)]
Simpify init

5 years agoSimplify sub_grid_scale
Michal Sojka [Wed, 12 Sep 2018 21:11:20 +0000 (23:11 +0200)]
Simplify sub_grid_scale

5 years agoRemove unnecessary typecasting
Michal Sojka [Wed, 12 Sep 2018 20:49:58 +0000 (22:49 +0200)]
Remove unnecessary typecasting

5 years agoReplace (p_windows_size.* / p_cell_size) with p_roi and remove useless typecasting
Michal Sojka [Wed, 12 Sep 2018 20:20:10 +0000 (22:20 +0200)]
Replace (p_windows_size.* / p_cell_size) with p_roi and remove useless typecasting

5 years agoUse cv::Size for p_roi
Michal Sojka [Wed, 12 Sep 2018 20:09:56 +0000 (22:09 +0200)]
Use cv::Size for p_roi

5 years agoFix scaling condition
Michal Sojka [Wed, 12 Sep 2018 19:55:53 +0000 (21:55 +0200)]
Fix scaling condition

"Or" makes more sense than "and".

5 years agoSimplify fit scale computation, cleanup
Michal Sojka [Wed, 12 Sep 2018 19:54:58 +0000 (21:54 +0200)]
Simplify fit scale computation, cleanup

5 years agoFix scale initialization
Michal Sojka [Wed, 12 Sep 2018 18:56:09 +0000 (20:56 +0200)]
Fix scale initialization

Without this, estimation of tracked object scale doesn't work
correctly.

This should have been done in commit 495214a ("Move scale and
async_res variables to ThreadCtx", 2018-09-12).

5 years agoAllow compiling all variants with ninja
Michal Sojka [Wed, 12 Sep 2018 18:23:43 +0000 (20:23 +0200)]
Allow compiling all variants with ninja

It is faster - see the comment in the Makefile.

5 years agoTravis complains about long logs
Michal Sojka [Wed, 12 Sep 2018 12:48:45 +0000 (14:48 +0200)]
Travis complains about long logs

5 years agotravis: Run tests
Michal Sojka [Wed, 12 Sep 2018 10:26:52 +0000 (12:26 +0200)]
travis: Run tests

We run them only with clang. This has two reasons:

1) We cannot run CUDA and this job does not build cuda.
2) It is the fastest job, so tests will be run while other jobs will
   still compile.

5 years agoTest improvements
Michal Sojka [Wed, 12 Sep 2018 10:16:05 +0000 (12:16 +0200)]
Test improvements

- we test --fit flag
- we do not rerun tests if the log is up to date
- vot2016.zip is not downloaded in vot2016 directory already exists

5 years agoAllow getting filter response
Michal Sojka [Wed, 12 Sep 2018 10:00:44 +0000 (12:00 +0200)]
Allow getting filter response

It roughly corresponds to tracker's view of tracking accuracy. This value
is produced even when ground truth data is not available.

PITOM wanted to have this for their drone use case.

Fixes #19.

5 years agoAdd automated testing
Michal Sojka [Wed, 12 Sep 2018 07:59:32 +0000 (09:59 +0200)]
Add automated testing

5 years agoMerge README update
Michal Sojka [Wed, 12 Sep 2018 05:16:35 +0000 (07:16 +0200)]
Merge README update

5 years agoUpdate README
Michal Sojka [Wed, 12 Sep 2018 05:14:54 +0000 (07:14 +0200)]
Update README

5 years agoMove scale and async_res variables to ThreadCtx
Michal Sojka [Tue, 11 Sep 2018 23:01:58 +0000 (01:01 +0200)]
Move scale and async_res variables to ThreadCtx

5 years agoChange p_threadctxs from list to vector
Michal Sojka [Tue, 11 Sep 2018 22:31:25 +0000 (00:31 +0200)]
Change p_threadctxs from list to vector

5 years agoUse list of thread contexts rather than list of pointers to thread contexts
Michal Sojka [Tue, 11 Sep 2018 21:51:47 +0000 (23:51 +0200)]
Use list of thread contexts rather than list of pointers to thread contexts

This simplifies some constructs in the code.

5 years agoRemove useless typecasting
Michal Sojka [Tue, 11 Sep 2018 19:54:53 +0000 (21:54 +0200)]
Remove useless typecasting

5 years agoReformat
Michal Sojka [Tue, 11 Sep 2018 19:49:12 +0000 (21:49 +0200)]
Reformat

5 years agoImprove error message
Michal Sojka [Tue, 11 Sep 2018 19:47:35 +0000 (21:47 +0200)]
Improve error message

5 years agoclang-format: Always move "if" body to a separate line
Michal Sojka [Tue, 11 Sep 2018 19:44:29 +0000 (21:44 +0200)]
clang-format: Always move "if" body to a separate line

5 years agoMerge branch 'cuda-streams'
Michal Sojka [Tue, 11 Sep 2018 19:38:09 +0000 (21:38 +0200)]
Merge branch 'cuda-streams'

5 years agoMerge branch 'rotation' of https://github.com/Shanigen/kcf into rotation
Shanigen [Tue, 11 Sep 2018 13:53:09 +0000 (15:53 +0200)]
Merge branch 'rotation' of https://github.com/Shanigen/kcf into rotation

5 years agoChange the float to text to be more clean and easier to read.
Shanigen [Mon, 23 Jul 2018 07:09:48 +0000 (09:09 +0200)]
Change the float to text to be more clean and easier to read.

5 years agoRemoved scale parameter from KCF_Tracker::geometric_transformations.
Shanigen [Wed, 18 Jul 2018 12:59:55 +0000 (14:59 +0200)]
Removed scale parameter from KCF_Tracker::geometric_transformations.

5 years agoRenamed search parameter in KCF_Tracker::geometric_transformations to allow_debug.
Shanigen [Wed, 18 Jul 2018 12:10:34 +0000 (14:10 +0200)]
Renamed search parameter in KCF_Tracker::geometric_transformations to allow_debug.

5 years agoIntegration of ThredCTX to rotation.
Shanigen [Tue, 11 Sep 2018 12:23:27 +0000 (14:23 +0200)]
Integration of ThredCTX to rotation.

5 years agoFix clang warnings
Shanigen [Sun, 9 Sep 2018 17:41:33 +0000 (19:41 +0200)]
Fix clang warnings

Mostly unused variable/function.

5 years agoAdded comments to variables in ThreadCtx + renamed p_scale_vars in kcf
Shanigen [Sun, 9 Sep 2018 04:33:44 +0000 (06:33 +0200)]
Added comments to variables in ThreadCtx + renamed p_scale_vars in kcf

This commit adresses issue #11.

5 years agoCorrection for CUFFT Big batch OpenMP
Shanigen [Sun, 9 Sep 2018 04:22:34 +0000 (06:22 +0200)]
Correction for CUFFT Big batch OpenMP

5 years agoCorrected warnings and errors in CUFFT version
Shanigen [Sat, 8 Sep 2018 10:31:11 +0000 (12:31 +0200)]
Corrected warnings and errors in CUFFT version

These problems were found by Travis CL.

5 years agoCorrected warnings in CPU ComplexMat
Shanigen [Sat, 8 Sep 2018 10:09:19 +0000 (12:09 +0200)]
Corrected warnings in CPU ComplexMat

This fixes #15.

5 years agoDo not force CUDA_HOST_COMPILER to g++
Michal Sojka [Sat, 8 Sep 2018 09:12:03 +0000 (11:12 +0200)]
Do not force CUDA_HOST_COMPILER to g++

cmake sets CUDA_HOST_COMPILER automatically based on CC environment
variable. If one uses custom CC variable and CUDA_HOST_COMPILER is set
this way, build usually fails. This happens, for example, when one
needs to use an older compiler (e.g. gcc-5), because the newer default
compiler is not supported by CUDA.

This fixes #10.

5 years agoStreamlined ThreadCtx
Shanigen [Fri, 7 Sep 2018 10:06:51 +0000 (12:06 +0200)]
Streamlined ThreadCtx

Removed obsolete variables and variables that were
only used in zero index and moved them to kcf.

5 years agoMinor CMake correction for CUDA versions
Shanigen [Thu, 6 Sep 2018 10:57:19 +0000 (12:57 +0200)]
Minor CMake correction for CUDA versions

5 years agoRemoved obsolete include in CUFFT
Shanigen [Thu, 6 Sep 2018 10:52:12 +0000 (12:52 +0200)]
Removed obsolete include in CUFFT

CUDA version of the tracker no longer uses OpenCV's CUDA
API.

5 years agoAdded DynMem class
Shanigen [Thu, 6 Sep 2018 10:42:16 +0000 (12:42 +0200)]
Added DynMem class

DynMem class streamlines dynamic memory allocation for both CUDA
and CPU version of the tracker. Also some minor changes in fft_cufft.hpp
were made, because there was a problem with order of header includes.

5 years agoMade dynamic memory allocation more readable
Shanigen [Wed, 5 Sep 2018 12:52:09 +0000 (14:52 +0200)]
Made dynamic memory allocation more readable

5 years agoAdded geometric_transformations function
Shanigen [Sat, 14 Jul 2018 07:20:25 +0000 (09:20 +0200)]
Added geometric_transformations function

5 years agoAddded visual debug mode and also modified the rotation tracking implementation.
Shanigen [Fri, 13 Jul 2018 11:07:46 +0000 (13:07 +0200)]
Addded visual debug mode and also modified the rotation tracking implementation.

5 years agoAdded visual debug output.
Shanigen [Wed, 11 Jul 2018 13:19:57 +0000 (15:19 +0200)]
Added visual debug output.

5 years agoCommiting work done so far on rotation
Shanigen [Wed, 11 Jul 2018 11:10:49 +0000 (13:10 +0200)]
Commiting work done so far on rotation

5 years agoSaving work done so far on rotation.
Shanigen [Mon, 9 Jul 2018 09:57:41 +0000 (11:57 +0200)]
Saving work done so far on rotation.

5 years agoMinor correction
Shanigen [Mon, 10 Sep 2018 00:03:49 +0000 (02:03 +0200)]
Minor correction

5 years agoAgain corrects error with Clang 3.8 in Travis CL
Shanigen [Sun, 9 Sep 2018 18:15:33 +0000 (20:15 +0200)]
Again corrects error with Clang 3.8 in Travis CL

5 years agoFixes Clang 3.8. error in Travis CL
Shanigen [Sun, 9 Sep 2018 18:01:55 +0000 (20:01 +0200)]
Fixes Clang 3.8. error in Travis CL

5 years agoFirst error of Clang 3.8 on Travis CL
Shanigen [Sun, 9 Sep 2018 17:41:33 +0000 (19:41 +0200)]
First error of Clang 3.8 on Travis CL

5 years agoSame as commit before correcting dbae3ced2d9959a6552845101b46989f79d697cc
Shanigen [Sun, 9 Sep 2018 17:34:34 +0000 (19:34 +0200)]
Same as commit before correcting dbae3ced2d9959a6552845101b46989f79d697cc

5 years agoCorrects small mistake from dbae3ced2d9959a6552845101b46989f79d697cc
Shanigen [Sun, 9 Sep 2018 17:22:56 +0000 (19:22 +0200)]
Corrects small mistake from dbae3ced2d9959a6552845101b46989f79d697cc

5 years agotravis: Also Build with clang-5
Michal Sojka [Sun, 9 Sep 2018 11:23:07 +0000 (13:23 +0200)]
travis: Also Build with clang-5

5 years agotravis: Also build with clang-3.8
Michal Sojka [Sun, 9 Sep 2018 09:26:32 +0000 (11:26 +0200)]
travis: Also build with clang-3.8

5 years agotravis: Build with -Werror
Michal Sojka [Sun, 9 Sep 2018 07:28:22 +0000 (09:28 +0200)]
travis: Build with -Werror

5 years agotravis: Compile with gcc-5
Michal Sojka [Sun, 9 Sep 2018 08:58:05 +0000 (10:58 +0200)]
travis: Compile with gcc-5

TX2 has also gcc-5. The advantage is that this gcc version does not
produce some (false?) warnings about uninitialized variables.

5 years agotravis: Use APT addon rather than a bunch of sudo commands
Michal Sojka [Sun, 9 Sep 2018 07:08:15 +0000 (09:08 +0200)]
travis: Use APT addon rather than a bunch of sudo commands

This looks like a cleaner approach.

5 years agotravis: Use less CUDA packages in dependencies
Michal Sojka [Sun, 9 Sep 2018 06:34:15 +0000 (08:34 +0200)]
travis: Use less CUDA packages in dependencies

This makes Travis checks faster (from 5:00 to 3:30)

5 years agoAdded comments to variables in ThreadCtx + renamed p_scale_vars in kcf
Shanigen [Sun, 9 Sep 2018 04:33:44 +0000 (06:33 +0200)]
Added comments to variables in ThreadCtx + renamed p_scale_vars in kcf

This commit adresses issue #11.

5 years agoCorrection of commit 079fbb857002b7f759fbcf7f3aa5d9d8549de31e
Shanigen [Sun, 9 Sep 2018 04:25:22 +0000 (06:25 +0200)]
Correction of commit 079fbb857002b7f759fbcf7f3aa5d9d8549de31e

5 years agoCorrection for CUFFT Big batch OpenMP
Shanigen [Sun, 9 Sep 2018 04:22:34 +0000 (06:22 +0200)]
Correction for CUFFT Big batch OpenMP

5 years agoCorrected warnings and errors in CUFFT version
Shanigen [Sat, 8 Sep 2018 10:31:11 +0000 (12:31 +0200)]
Corrected warnings and errors in CUFFT version

These problems were found by Travis CL.

5 years agoCorrected warnings in CPU ComplexMat
Shanigen [Sat, 8 Sep 2018 10:09:19 +0000 (12:09 +0200)]
Corrected warnings in CPU ComplexMat

This fixes #15.

5 years agoAdd markers to compile output
Michal Sojka [Sat, 8 Sep 2018 09:10:50 +0000 (11:10 +0200)]
Add markers to compile output

With this, it will be easier to figure in which build variant an error
happens.

5 years agoEnable Travis CI
Michal Sojka [Sat, 8 Sep 2018 07:12:12 +0000 (09:12 +0200)]
Enable Travis CI

5 years agoDo not force CUDA_HOST_COMPILER to g++
Michal Sojka [Sat, 8 Sep 2018 09:12:03 +0000 (11:12 +0200)]
Do not force CUDA_HOST_COMPILER to g++

cmake sets CUDA_HOST_COMPILER automatically based on CC environment
variable. If one uses custom CC variable and CUDA_HOST_COMPILER is set
this way, build usually fails. This happens, for example, when one
needs to use an older compiler (e.g. gcc-5), because the newer default
compiler is not supported by CUDA.

This fixes #10.

5 years agoChanged variables in ThreadCtx to uint
Shanigen [Wed, 5 Sep 2018 12:26:17 +0000 (14:26 +0200)]
Changed variables in ThreadCtx to uint

Variables which are always positive were changed to uint.
This meant that some changes had to be made to ComplexMat
to reduce the number of typecasts.

5 years agoStreamlined ThreadCtx
Shanigen [Fri, 7 Sep 2018 10:06:51 +0000 (12:06 +0200)]
Streamlined ThreadCtx

Removed obsolete variables and variables that were
only used in zero index and moved them to kcf.

5 years agoChanged p_windows_size and windows_size type to cv::Size
Shanigen [Wed, 5 Sep 2018 11:42:32 +0000 (13:42 +0200)]
Changed p_windows_size and windows_size type to cv::Size

5 years agoMinor CMake correction for CUDA versions
Shanigen [Thu, 6 Sep 2018 10:57:19 +0000 (12:57 +0200)]
Minor CMake correction for CUDA versions

5 years agoCUFFT now uses ThreadCtx and also pragmas from pragmas.h
Shanigen [Wed, 5 Sep 2018 11:25:49 +0000 (13:25 +0200)]
CUFFT now uses ThreadCtx and also pragmas from pragmas.h

5 years agoRemoved obsolete include in CUFFT
Shanigen [Thu, 6 Sep 2018 10:52:12 +0000 (12:52 +0200)]
Removed obsolete include in CUFFT

CUDA version of the tracker no longer uses OpenCV's CUDA
API.

5 years agoRenamed Scale_Vars to ThreadCtx
Shanigen [Wed, 5 Sep 2018 11:22:50 +0000 (13:22 +0200)]
Renamed Scale_Vars to ThreadCtx

Also part of this commit is deletion of forward declaration of
Scale_Vars (now ThreadCtx) in fft_fftw.h, fft_opencv.h and fhog.hpp.

5 years agoAdded DynMem class
Shanigen [Thu, 6 Sep 2018 10:42:16 +0000 (12:42 +0200)]
Added DynMem class

DynMem class streamlines dynamic memory allocation for both CUDA
and CPU version of the tracker. Also some minor changes in fft_cufft.hpp
were made, because there was a problem with order of header includes.

5 years agoMoved omp pragmas declaration to seperate file
Shanigen [Wed, 5 Sep 2018 11:02:57 +0000 (13:02 +0200)]
Moved omp pragmas declaration to seperate file

Definition of omp pragmas have nothing to do with Scale_vars,
for that reason pragmas.h was created with all of the definitions.

5 years agoCorrects bug in 7a7ae99a73cc8456950d73e83586efbff6c28379
Shanigen [Thu, 6 Sep 2018 08:56:03 +0000 (10:56 +0200)]
Corrects bug in 7a7ae99a73cc8456950d73e83586efbff6c28379

5 years agoRevert "Removed obsolete method set_stream"
Shanigen [Wed, 5 Sep 2018 10:54:07 +0000 (12:54 +0200)]
Revert "Removed obsolete method set_stream"

This reverts commit a22c75434c0db289b63de882fc1677108882b445.

5 years agoMade dynamic memory allocation more readable
Shanigen [Wed, 5 Sep 2018 12:52:09 +0000 (14:52 +0200)]
Made dynamic memory allocation more readable

5 years agoRemoved obsolete method set_stream
Shanigen [Wed, 5 Sep 2018 10:32:15 +0000 (12:32 +0200)]
Removed obsolete method set_stream

In CUDA version of ComplexMat class was unused set_stream method.

5 years agoCMake cleanup
Shanigen [Wed, 5 Sep 2018 10:24:13 +0000 (12:24 +0200)]
CMake cleanup

5 years agoRemoved redundant forward declaration.
Shanigen [Wed, 5 Sep 2018 07:57:47 +0000 (09:57 +0200)]
Removed redundant forward declaration.

This commit fixes #13.

5 years agoFormatted files with Clang Format.
Shanigen [Wed, 5 Sep 2018 07:54:21 +0000 (09:54 +0200)]
Formatted files with Clang Format.

5 years agoReformat some parts with clang-format
Michal Sojka [Wed, 5 Sep 2018 06:44:39 +0000 (08:44 +0200)]
Reformat some parts with clang-format

5 years agoBig Batch mode now support OpenMP
Shanigen [Wed, 15 Aug 2018 09:22:16 +0000 (11:22 +0200)]
Big Batch mode now support OpenMP

Big batch mode now can use OpenMP, while using
the Scale_vars structure.

5 years agoCUDA streams works
Shanigen [Fri, 10 Aug 2018 11:20:02 +0000 (13:20 +0200)]
CUDA streams works

This commit adds support for CUDA streams and also corrects issue
with CUFFTW version of the tracker. All version now works without
any problem. CUDA streams version currently does not support C++
async directive and only OpenMP.
TODO: Implement correct use of OpenMP in big batch mode.

5 years agoWork done so far on CUDA streams
Shanigen [Thu, 9 Aug 2018 13:42:18 +0000 (15:42 +0200)]
Work done so far on CUDA streams

This commit contains not only workd done to implement CUDA streams,
but also some changes to correct warnings and make the naming little
bit more consistent.

5 years agoBig batch mode now works for all versions
Shanigen [Tue, 7 Aug 2018 14:54:08 +0000 (16:54 +0200)]
Big batch mode now works for all versions

5 years agoRemoved OpenCV_CuFFT version
Shanigen [Tue, 7 Aug 2018 08:45:21 +0000 (10:45 +0200)]
Removed OpenCV_CuFFT version

Removed obsolete version of the tracker, which does not exist, but
was still available in CMake.

5 years agoFFT does not take whole Scale_vars struct
Shanigen [Tue, 7 Aug 2018 08:26:35 +0000 (10:26 +0200)]
FFT does not take whole Scale_vars struct

FFT class now does not need to know anything about the tracker. It only gets as
input parameters objects and variables on which to perform FFT. Also Scale_vars
constructor was added, which allocates memory for variables.