version:2.1.5

bugfixes:
update:拨号使用ocr进行识别
This commit is contained in:
2025-05-22 14:30:12 +08:00
parent a86592005f
commit d7e830985f
226 changed files with 66016 additions and 81139 deletions

View File

@@ -35,44 +35,47 @@
#include "matrix.h"
#include "random.h"
namespace cvflann {
namespace cvflann
{
template<typename T>
Matrix <T> random_sample(Matrix <T> &srcMatrix, long size, bool remove = false) {
Matrix<T> newSet(new T[size * srcMatrix.cols], size, srcMatrix.cols);
template<typename T>
Matrix<T> random_sample(Matrix<T>& srcMatrix, long size, bool remove = false)
{
Matrix<T> newSet(new T[size * srcMatrix.cols], size,srcMatrix.cols);
T *src, *dest;
for (long i = 0; i < size; ++i) {
long r = rand_int((int) (srcMatrix.rows - i));
dest = newSet[i];
src = srcMatrix[r];
std::copy(src, src + srcMatrix.cols, dest);
if (remove) {
src = srcMatrix[srcMatrix.rows - i - 1];
dest = srcMatrix[r];
std::copy(src, src + srcMatrix.cols, dest);
}
}
T* src,* dest;
for (long i=0; i<size; ++i) {
long r = rand_int((int)(srcMatrix.rows-i));
dest = newSet[i];
src = srcMatrix[r];
std::copy(src, src+srcMatrix.cols, dest);
if (remove) {
srcMatrix.rows -= size;
src = srcMatrix[srcMatrix.rows-i-1];
dest = srcMatrix[r];
std::copy(src, src+srcMatrix.cols, dest);
}
return newSet;
}
template<typename T>
Matrix <T> random_sample(const Matrix <T> &srcMatrix, size_t size) {
UniqueRandom rand((int) srcMatrix.rows);
Matrix<T> newSet(new T[size * srcMatrix.cols], size, srcMatrix.cols);
T *src, *dest;
for (size_t i = 0; i < size; ++i) {
long r = rand.next();
dest = newSet[i];
src = srcMatrix[r];
std::copy(src, src + srcMatrix.cols, dest);
}
return newSet;
if (remove) {
srcMatrix.rows -= size;
}
return newSet;
}
template<typename T>
Matrix<T> random_sample(const Matrix<T>& srcMatrix, size_t size)
{
UniqueRandom rand((int)srcMatrix.rows);
Matrix<T> newSet(new T[size * srcMatrix.cols], size,srcMatrix.cols);
T* src,* dest;
for (size_t i=0; i<size; ++i) {
long r = rand.next();
dest = newSet[i];
src = srcMatrix[r];
std::copy(src, src+srcMatrix.cols, dest);
}
return newSet;
}
} // namespace