| Index: tools/telemetry/telemetry/internal/image_processing/cv_util_unittest.py
|
| diff --git a/tools/telemetry/telemetry/internal/image_processing/cv_util_unittest.py b/tools/telemetry/telemetry/internal/image_processing/cv_util_unittest.py
|
| deleted file mode 100644
|
| index d5d5cd75bac5248c6ea8fa1c042a68091c113313..0000000000000000000000000000000000000000
|
| --- a/tools/telemetry/telemetry/internal/image_processing/cv_util_unittest.py
|
| +++ /dev/null
|
| @@ -1,114 +0,0 @@
|
| -# Copyright 2014 The Chromium Authors. All rights reserved.
|
| -# Use of this source code is governed by a BSD-style license that can be
|
| -# found in the LICENSE file.
|
| -
|
| -import unittest
|
| -
|
| -from telemetry.internal.util import external_modules
|
| -
|
| -try:
|
| - np = external_modules.ImportRequiredModule('numpy')
|
| -except ImportError:
|
| - pass
|
| -else:
|
| - class CVUtilTest(unittest.TestCase):
|
| - def __init__(self, *args, **kwargs):
|
| - super(CVUtilTest, self).__init__(*args, **kwargs)
|
| - # Import modules with dependencies that may not be preset in test setup so
|
| - # that importing this unit test doesn't cause the test runner to raise an
|
| - # exception.
|
| - from telemetry.internal.image_processing import cv_util
|
| - self.cv_util = cv_util
|
| -
|
| - def testAreLinesOrthogonalish(self):
|
| - l1 = np.asfarray((0, 0, 1, 0))
|
| - l2 = np.asfarray((0, 0, 0, 1))
|
| - self.assertTrue(self.cv_util.AreLinesOrthogonal(l1, l2, 0))
|
| - self.assertTrue(self.cv_util.AreLinesOrthogonal(l2, l1, 0))
|
| - self.assertFalse(self.cv_util.AreLinesOrthogonal(l1, l1,
|
| - np.pi / 2 - 1e-10))
|
| - self.assertFalse(self.cv_util.AreLinesOrthogonal(l2, l2,
|
| - np.pi / 2 - 1e-10))
|
| - self.assertTrue(self.cv_util.AreLinesOrthogonal(l1, l1, np.pi / 2))
|
| - self.assertTrue(self.cv_util.AreLinesOrthogonal(l2, l2, np.pi / 2))
|
| -
|
| - l3 = np.asfarray((0, 0, 1, 1))
|
| - l4 = np.asfarray((1, 1, 0, 0))
|
| - self.assertFalse(self.cv_util.AreLinesOrthogonal(l3, l4,
|
| - np.pi / 2 - 1e-10))
|
| - self.assertTrue(self.cv_util.AreLinesOrthogonal(l3, l1, np.pi / 4))
|
| -
|
| - l5 = np.asfarray((0, 1, 1, 0))
|
| - self.assertTrue(self.cv_util.AreLinesOrthogonal(l3, l5, 0))
|
| -
|
| - def testFindLineIntersection(self):
|
| - l1 = np.asfarray((1, 1, 2, 1))
|
| - l2 = np.asfarray((1, 1, 1, 2))
|
| - ret, p = self.cv_util.FindLineIntersection(l1, l2)
|
| - self.assertTrue(ret)
|
| - self.assertTrue(np.array_equal(p, np.array([1, 1])))
|
| - l3 = np.asfarray((1.1, 1, 2, 1))
|
| - ret, p = self.cv_util.FindLineIntersection(l2, l3)
|
| - self.assertFalse(ret)
|
| - self.assertTrue(np.array_equal(p, np.array([1, 1])))
|
| - l4 = np.asfarray((2, 1, 1, 1))
|
| - l5 = np.asfarray((1, 2, 1, 1))
|
| - ret, p = self.cv_util.FindLineIntersection(l4, l5)
|
| - self.assertTrue(ret)
|
| - self.assertTrue(np.array_equal(p, np.array([1, 1])))
|
| - l6 = np.asfarray((1, 1, 0, 0))
|
| - l7 = np.asfarray((0, 1, 1, 0))
|
| - ret, p = self.cv_util.FindLineIntersection(l7, l6)
|
| - self.assertTrue(ret)
|
| - self.assertTrue(np.array_equal(p, np.array([0.5, 0.5])))
|
| - l8 = np.asfarray((0, 0, 0, 1))
|
| - l9 = np.asfarray((1, 0, 1, 1))
|
| - ret, p = self.cv_util.FindLineIntersection(l8, l9)
|
| - self.assertFalse(ret)
|
| - self.assertTrue(np.isnan(p[0]))
|
| -
|
| - def testExtendLines(self):
|
| - l1 = (-1, 0, 1, 0)
|
| - l2 = (0, -1, 0, 1)
|
| - l3 = (4, 4, 6, 6)
|
| - l4 = (1, 1, 1, 1)
|
| - lines = self.cv_util.ExtendLines(np.asfarray([l1, l2, l3, l4],
|
| - dtype=np.float64), 10)
|
| - lines = np.around(lines, 10)
|
| - expected0 = ((5.0, 0.0, -5.0, 0.0))
|
| - self.assertAlmostEqual(np.sum(np.abs(np.subtract(lines[0], expected0))),
|
| - 0.0, 7)
|
| - expected1 = ((0.0, 5.0, 0.0, -5.0))
|
| - self.assertAlmostEqual(np.sum(np.abs(np.subtract(lines[1], expected1))),
|
| - 0.0, 7)
|
| -
|
| - off = np.divide(np.sqrt(50), 2, dtype=np.float64)
|
| - expected2 = ((5 + off, 5 + off, 5 - off, 5 - off))
|
| - self.assertAlmostEqual(np.sum(np.abs(np.subtract(lines[2], expected2))),
|
| - 0.0, 7)
|
| - expected3 = ((-4, 1, 6, 1))
|
| - self.assertAlmostEqual(np.sum(np.abs(np.subtract(lines[3], expected3))),
|
| - 0.0, 7)
|
| -
|
| - def testIsPointApproxOnLine(self):
|
| - p1 = np.asfarray((-1, -1))
|
| - l1 = np.asfarray((0, 0, 100, 100))
|
| - p2 = np.asfarray((1, 2))
|
| - p3 = np.asfarray((2, 1))
|
| - p4 = np.asfarray((3, 1))
|
| - self.assertTrue(self.cv_util.IsPointApproxOnLine(p1, l1, 1 + 1e-7))
|
| - self.assertTrue(self.cv_util.IsPointApproxOnLine(p2, l1, 1 + 1e-7))
|
| - self.assertTrue(self.cv_util.IsPointApproxOnLine(p3, l1, 1 + 1e-7))
|
| - self.assertFalse(self.cv_util.IsPointApproxOnLine(p4, l1, 1 + 1e-7))
|
| -
|
| - def testSqDistances(self):
|
| - p1 = np.array([[0, 2], [0, 3]])
|
| - p2 = np.array([2, 0])
|
| - dists = self.cv_util.SqDistance(p1, p2)
|
| - self.assertEqual(dists[0], 8)
|
| - self.assertEqual(dists[1], 13)
|
| -
|
| - def testSqDistance(self):
|
| - p1 = np.array([0, 2])
|
| - p2 = np.array([2, 0])
|
| - self.assertEqual(self.cv_util.SqDistance(p1, p2), 8)
|
|
|