Commit Graph

59 Commits

Author SHA1 Message Date
Patrik Huber
7be0c78533 Merge pull request #10589 from patrikhuber:patch-1
* Make <array> #ifdef true for MSVC

I think MSVC had `std::array` for quite a while (possibly going back as far as VS 2012, but it's definitely there in 2015 and 2017. So I think `_MSC_VER` `1900` is a safe bet. Probably `1800` and maybe even `1700` could work as well but I can't test that locally.

* fix test
2018-02-17 14:53:30 +03:00
yuki takehara
379ea15d16 Add new Mat constructor (#10808)
* Add new Mat constructor

* Fix build error

* Fix build error

* Fixed the code about 4 comments

* Fixed three comments

* delete previous local declaration

* fix build error
2018-02-12 14:36:54 +03:00
Alexander Alekhin
4a297a2443 ts: refactor OpenCV tests
- removed tr1 usage (dropped in C++17)
- moved includes of vector/map/iostream/limits into ts.hpp
- require opencv_test + anonymous namespace (added compile check)
- fixed norm() usage (must be from cvtest::norm for checks) and other conflict functions
- added missing license headers
2018-02-03 19:39:47 +00:00
Alexander Alekhin
d48d2d7fe2 core(test): refactor PCA test
- CV_L2 -> relative NORM_L2
- eigenEps: 1e-6 ==> 1e-4
- evalEps: 1e-6 ==> 1e-5
- evecEps: 1e-3 ==> 5e-3
- RNG seed: 12345
- drop non-informative legacy test code (ts->printf, etc)
2017-12-12 15:07:27 +03:00
Alexander Alekhin
024be9b8c9 Merge pull request #9818 from tz70s:issue#9570 2017-10-11 15:19:17 +00:00
berak
ada753a54c fix c++17 namsespace issues 2017-10-11 09:50:22 +02:00
tz70s
6c1247b38c fix#9570: implement mat ptr for generic types
The original template based mat ptr for indexing is not implemented,
add the similar implementation as uchar type, but cast to
user-defined type from the uchar pointer.
2017-10-10 21:46:49 +08:00
Maksim Shabunin
c92c99ed0b Enabled forEach for const Mats 2017-09-07 11:35:14 +03:00
Alexander Alekhin
f7a273cfb3 core(test): regression test for 9507 2017-09-01 21:08:58 +03:00
Vladislav Sovrasov
e5fbb4f5d2 Merge pull request #9034 from sovrasov:mats_from_initializer_list
Add constructors taking initializer_list for some of OpenCV data types (#9034)

* Add a constructor taking initializer_list for Matx

* Add a constructor taking initializer list for Mat and Mat_

* Add one more method to initialize Mat to the corresponding tutorial

* Add a note how to initialize Matx

* CV_CXX_11->CV_CXX11
2017-07-14 17:17:09 +00:00
Vladislav Sovrasov
f42b7d03b4 core: add a test of iteration through the Mat_ with range-based for 2017-07-03 12:49:17 +03:00
Vladislav Sovrasov
2c2b1405a3 Add test for Mat_::release() 2017-05-23 12:20:48 +03:00
Arnaud Brejeon
636ab095b0 Merge pull request #8535 from arnaudbrejeon:std_array
Add support for std::array<T, N> (#8535)

* Add support for std::array<T, N>

* Add std::array<Mat, N> support

* Remove UMat constructor with std::array parameter
2017-04-19 13:13:39 +03:00
Julian Exner
46af07575e Add test case for cv::Mat::forEach
This test case uses a matrix with more dimensions than columns. Without
the fix in
b45e784beb
this crashes with a segmentation fault, hangs or simply fails with wrong
values.
2017-03-24 15:34:58 +01:00
Addison Elliott
eb04b2bfa9 Added N-dim submat selection with vectors
Currently, to select a submatrix of a N-dimensional matrix, it requires
two lines of code while only one line of code is required if using a 2D
array.

I added functionality to be able to select an N-dim submatrix using a
vector list instead of a Range pointer. This allows initializer lists to
be used for a one-line selection.
2016-12-15 09:16:40 -06:00
Alexander Alekhin
2acfb263bb Merge pull request #6910 from ilya-lavrenov:clone 2016-07-20 15:32:22 +00:00
Ilya Lavrenov
6c42ad5b90 fixed typo 2016-07-19 16:18:48 +03:00
Ilya Lavrenov
87ae4e0564 fixed clone of empty matrix 2016-07-19 11:31:53 +03:00
Ilya Lavrenov
957bf1452c added some tests for push_back 2016-07-15 14:48:22 +03:00
Ilya Lavrenov
0af3947468 added note about cv::reduce output type for MIN/MAX 2016-07-14 17:22:08 +03:00
Alexander Alekhin
5f269d08b4 bigdata: add test, resolve split/merge issue 2016-07-08 18:05:53 +03:00
Alexander Alekhin
96f5a930f4 test: regression 5991 2016-01-26 14:11:53 +03:00
Vitaliy Lyudvichenko
85cc11e3b2 Changed behaviour of Mat/UMat::reshape() to accept n-dim shapes 2015-08-21 19:26:29 +03:00
Alexander Alekhin
a6f46d7bb1 issue 4457 2015-07-08 16:22:58 +03:00
Alexander Alekhin
885114ed2c fix copyTo memory corruption, but the main problem is still here 2015-07-02 13:47:59 +03:00
Alexander Alekhin
30a5a9ed34 test vector processing 2015-07-01 20:10:22 +03:00
Vadim Pisarevsky
d5afd070ce Merge pull request #4094 from kashefy:Mat_push_back_MatExpr_bug_4340 2015-07-01 09:09:51 +00:00
Youssef Kashef
790ef21a60 add unit test around Mat::push_back()
add template specialization Mat::push_back() for MatExpr paramters

extend push_back MatExpr to mat in unit test

cast to object instead of reference

test with multi-row MatExpr input
2015-06-30 10:29:40 +02:00
Alexander Alekhin
9394486147 fix issue 3891 2015-06-16 18:53:58 +03:00
Vadim Pisarevsky
66eb270cf7 significantly reduced sparse matrix footprint:
http://code.opencv.org/issues/2206,
http://code.opencv.org/issues/2924
2015-05-14 23:29:09 +03:00
Vadim Pisarevsky
2ec92ba440 added test for http://code.opencv.org/issues/1918 2015-05-03 02:46:33 +03:00
Vadim Pisarevsky
79ac0d05ce added test checking http://code.opencv.org/issues/4050 2015-05-02 20:38:30 +03:00
Vadim Pisarevsky
9fbd1d68ad refactored div & pow funcs; added tests for special cases in pow() function.
fixed http://code.opencv.org/issues/3935
possibly fixed http://code.opencv.org/issues/3594
2015-05-01 21:49:11 +03:00
Vadim Pisarevsky
7918267d02 fixed U non-orthogonality in SVD (http://code.opencv.org/issues/3801) 2015-04-29 16:09:58 +03:00
Adil Ibragimov
8a4a1bb018 Several type of formal refactoring:
1. someMatrix.data -> someMatrix.prt()
2. someMatrix.data + someMatrix.step * lineIndex -> someMatrix.ptr( lineIndex )
3. (SomeType*) someMatrix.data -> someMatrix.ptr<SomeType>()
4. someMatrix.data -> !someMatrix.empty() ( or !someMatrix.data -> someMatrix.empty() ) in logical expressions
2014-08-13 15:21:35 +04:00
Kazuki Matsuda
fa292c3d8d Implimentation "cv::Mat::forEach"
I propose forEach method for cv::Mat and cv::Mat_.
This is solution for the overhead of MatIterator_<_Tp>.

I runs a test that micro opecode runs all over the pixel of cv::Mat_<cv::Point3_<uint8_t>>.
And this implementation 40% faster than the simple pointer, 80% faster than iterator.
With OpenMP, 70% faster than simple pointer, 95% faster than iterator (Core i7 920).

Above all, code is more readable.

My test code is here.
    https://gist.github.com/kazuki-ma/8285876

Thanks.
2014-05-18 11:01:45 +09:00
Ilya Lavrenov
aa5326c231 cv::norm -> cvtest::norm in tests
Conflicts:

	modules/core/src/stat.cpp
2014-04-08 14:49:20 +04:00
Roman Donchenko
9dc93ce328 Merge pull request #2176 from SpecLad:merge-2.4 2014-01-20 18:04:56 +04:00
Roman Donchenko
e45fd939c2 Merge remote-tracking branch 'origin/2.4' into merge-2.4
Conflicts:
	modules/ocl/src/cl_runtime/cl_runtime.cpp
	modules/ocl/src/cl_runtime/clamdblas_runtime.cpp
	modules/ocl/src/cl_runtime/clamdfft_runtime.cpp
	modules/ocl/src/cl_runtime/generator/template/clamdblas_runtime.cpp.in
	modules/ocl/src/cl_runtime/generator/template/clamdfft_runtime.cpp.in
2014-01-20 15:10:19 +04:00
Ilya Lavrenov
37789f015a deleted excess semicolons, commas 2014-01-18 01:31:33 +04:00
Roman Donchenko
5f8d8c0069 Added a test for matrix-to-vector copy and convert. 2014-01-17 14:18:31 +04:00
Roman Donchenko
8200a95ced Boring changes - core.
This and several following commits contain the "boring" changes required
to support the new Ptr. These are changes like:

* new T -> makePtr<T> or .reset(new T) or Ptr<T>(new T)
  (depending on the situation)
* p.empty() -> !p
* delete_obj -> DefaultDeleter::operator()

and similar changes that are numerous, but primitive.
2013-09-05 18:26:43 +04:00
Mathieu Barnachon
ff85575b28 Adding read/write functions to PCA class. Update PCA test. 2013-08-05 12:06:55 +12:00
Andrey Kamaev
940eedfb27 Finalize core headers reorganization 2013-04-03 14:10:03 +04:00
Andrey Kamaev
715fa3303e Move cv::Mat out of core.hpp 2013-04-01 15:24:34 +04:00
Andrey Kamaev
d586f4a103 Fix x64 build warnings 2013-02-25 15:04:19 +04:00
Andrey Kamaev
ae5661d5dc Fix random failures of Split and Merge tests 2013-01-16 17:55:27 +04:00
Andrey Kamaev
0a4ed2bc01 Fix Windows build warnings 2012-11-09 10:10:04 +04:00
Andrey Kamaev
15076f9232 Fix implementation of PCA overload with retained variance parameter 2012-10-22 18:46:20 +04:00
Maria Dimashova
78dd1893bb added tests for cv::merge, cv::split, cv::phase 2012-10-21 12:22:39 +04:00