コード例 #1
0
ファイル: test_automata.py プロジェクト: JDWarner/growcut
def test_iterGrid():
    """ Assert the correct pattern of samples """

    grid = np.array([[1, 2], [3, 4]])
    gridIterator = automata.iterGrid(grid, automata.CONNECT_4)

    point, values = gridIterator.next()
    assert np.allclose(values, [3, 3, 2, 2])

    point, values = gridIterator.next()
    assert np.allclose(values, [4, 4, 1, 1])

    point, values = gridIterator.next()
    assert np.allclose(values, [1, 1, 4, 4])

    point, values = gridIterator.next()
    assert np.allclose(values, [2, 2, 3, 3])
コード例 #2
0
ファイル: test_automata.py プロジェクト: JDWarner/growcut
def test_formSamples():
    """
    Assert that the correct pattern of samples is generated using both
    the fast and slow sampling methods.
    """

    grid, _ = np.mgrid[0:100, 0:100]

    gridIterator = automata.iterGrid(grid, automata.CONNECT_4)

    # Slow approach
    iteratorValues = []
    for _, values in gridIterator:
        iteratorValues.append(values)
    iteratorValues = np.array(iteratorValues)

    # Fast approach
    coordinates = automata.formSamples(grid.shape, automata.CONNECT_4)
    sampledValues = grid[coordinates]

    # Assert equivalence of approaches
    assert np.allclose(sampledValues, iteratorValues)