| 23 | namespace bcl = boost::compute; |
| 24 | |
| 25 | BOOST_AUTO_TEST_CASE(opencv_mat_to_buffer) |
| 26 | { |
| 27 | // create opencv mat |
| 28 | cv::Mat mat(1, 4, CV_32F); |
| 29 | mat.at<float>(0, 0) = 0.0f; |
| 30 | mat.at<float>(0, 1) = 2.5f; |
| 31 | mat.at<float>(0, 2) = 4.1f; |
| 32 | mat.at<float>(0, 3) = 5.6f; |
| 33 | |
| 34 | // copy mat to gpu vector |
| 35 | bcl::vector<float> vector(4, context); |
| 36 | bcl::opencv_copy_mat_to_buffer(mat, vector.begin(), queue); |
| 37 | CHECK_RANGE_EQUAL(float, 4, vector, (0.0f, 2.5f, 4.1f, 5.6f)); |
| 38 | |
| 39 | // reverse gpu vector and copy back to mat |
| 40 | bcl::reverse(vector.begin(), vector.end(), queue); |
| 41 | bcl::opencv_copy_buffer_to_mat(vector.begin(), mat, queue); |
| 42 | BOOST_CHECK_EQUAL(mat.at<float>(0), 5.6f); |
| 43 | BOOST_CHECK_EQUAL(mat.at<float>(1), 4.1f); |
| 44 | BOOST_CHECK_EQUAL(mat.at<float>(2), 2.5f); |
| 45 | BOOST_CHECK_EQUAL(mat.at<float>(3), 0.0f); |
| 46 | } |
| 47 | |
| 48 | BOOST_AUTO_TEST_CASE(opencv_image_format) |
| 49 | { |
nothing calls this directly
no test coverage detected