/usr/include/dlib/test/checkerboard.h is in libdlib-dev 18.18-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 | #ifndef DLIB_CHECKERBOARD_TeST_H_
#define DLIB_CHECKERBOARD_TeST_H_
#include <dlib/matrix.h>
#include <vector>
#include <dlib/rand.h>
namespace dlib
{
template <typename scalar_type>
void get_checkerboard_problem (
std::vector<matrix<scalar_type,2,1> >& x,
std::vector<scalar_type>& y,
const long num_samples,
const long board_dimension = 8
)
/*!
requires
- num_samples > 0
- board_dimension > 0
ensures
- #x.size() == y.size() == num_samples
- is_binary_classification_problem(#x,#y) == true
- #x will contain points and #y labels that were
sampled randomly from a checkers board that has
board_dimension squares on each side.
!*/
{
static dlib::rand rnd;
x.clear();
y.clear();
matrix<scalar_type,2,1> sample;
for (long i = 0; i < num_samples; ++i)
{
sample(0) = rnd.get_random_double();
sample(1) = rnd.get_random_double();
sample *= board_dimension;
x.push_back(sample);
if (((int)sum(floor(sample)) %2) == 0)
y.push_back(+1);
else
y.push_back(-1);
}
}
}
#endif // DLIB_CHECKERBOARD_TeST_H_
|