コード例 #1
0
ファイル: test_log.py プロジェクト: vinooniv/opencv-log
def test_debug_mode_trace_level(show_image):
    remove_dirs('log/')
    log.set_mode(log.Mode.DEBUG)
    log.set_level(log.Level.TRACE)
    show_image.return_value = ord("y")
    log_all_level(cv2.imread("tests/data/orange.png"))
    assert os.path.exists('log/cvlog.html') is False
コード例 #2
0
def test_log_path():
    log.set_mode(log.Mode.LOG)
    log.set_path("check/")
    img = cv2.imread("tests/data/orange.png")
    log.image(log.Level.ERROR, img)
    assert os.path.exists('check/cvlog.html') is True
    log.set_path("log/")
コード例 #3
0
def test_log_image():
    remove_dirs('log/')
    img = cv2.imread("tests/data/orange.png")
    log.set_mode(log.Mode.LOG)
    log.image(log.Level.ERROR, img)
    logitem = get_html('log/cvlog.html').select('.log-list .log-item')
    assert logitem[0].select('.log-type')[0].text == 'image'
    assert logitem[0]['logdata'] == read_file('tests/data/expected/image.txt')
コード例 #4
0
def test_log_mode_default_level():
    remove_dirs('log/')
    log.set_mode(log.Mode.LOG)
    log_all_level(cv2.imread("tests/data/orange.png"))
    logitem = get_html('log/log.html').select('.log-list .log-item')
    assert len(logitem) == 1
    level_tag = logitem[0].select('.level')[0]
    assert level_tag.get_text() == 'ERROR'
    assert level_tag['class'] == ['level', 'error']
コード例 #5
0
def test_log_interruption():
    remove_dirs('log/')
    log.set_mode(log.Mode.LOG)
    img = cv2.imread("tests/data/orange.png")
    log.image(log.Level.ERROR, img)
    assert os.path.exists('log/cvlog.html') is True
    remove_dirs('log/')
    log.image(log.Level.ERROR, img)
    assert os.path.exists('log/cvlog.html') is True
コード例 #6
0
def test_log_edges():
    remove_dirs('log/')
    img = cv2.imread('tests/data/sudoku.png')
    log.set_mode(log.Mode.LOG)
    gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
    edges = cv2.Canny(gray, 50, 150, apertureSize=3)
    log.edges(log.Level.ERROR, edges)
    logitem = get_html('log/cvlog.html').select('.log-list .log-item')
    assert logitem[0].select('.log-type')[0].text == 'edges'
    assert logitem[0]['logdata'] == read_file('tests/data/expected/edges.txt')
コード例 #7
0
def test_log_threshold():
    remove_dirs('log/')
    img = cv2.imread('tests/data/board.jpg')
    log.set_mode(log.Mode.LOG)
    imgray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
    ret, thresh = cv2.threshold(imgray, 127, 255, 0)
    log.threshold(log.Level.ERROR, thresh)
    logitem = get_html('log/cvlog.html').select('.log-list .log-item')
    assert logitem[0].select('.log-type')[0].text == 'threshold'
    assert logitem[0]['logdata'] == read_file(
        'tests/data/expected/thershold.txt')
コード例 #8
0
ファイル: test_log.py プロジェクト: vinooniv/opencv-log
def test_log_hough_lines():
    remove_dirs('log/')
    img = cv2.imread('tests/data/sudoku.png')
    log.set_mode(log.Mode.LOG)
    gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
    edges = cv2.Canny(gray, 50, 150, apertureSize=3)
    lines = cv2.HoughLines(edges, 1, np.pi / 180, 200)

    log.hough_lines(log.Level.ERROR, lines, img)
    logitem = get_html('log/cvlog.html').select('.log-list .log-item')
    assert logitem[0]['logdata'] == read_file(
        'tests/data/expected/houghline_img.txt')
コード例 #9
0
ファイル: test_log.py プロジェクト: vinooniv/opencv-log
def test_contours():
    remove_dirs('log/')
    img = cv2.imread('tests/data/contour.jpg')
    log.set_mode(log.Mode.LOG)
    imgray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
    ret, thresh = cv2.threshold(imgray, 127, 255, 0)
    image, contours, hierarchy = cv2.findContours(thresh, cv2.RETR_TREE,
                                                  cv2.CHAIN_APPROX_SIMPLE)
    log.contours(log.Level.ERROR, contours, img)
    logitem = get_html('log/cvlog.html').select('.log-list .log-item')
    assert logitem[0]['logdata'] == read_file(
        'tests/data/expected/contour.txt')
コード例 #10
0
ファイル: test_log.py プロジェクト: vinooniv/opencv-log
def test_log_mode_info_level():
    remove_dirs('log/')
    log.set_mode(log.Mode.LOG)
    log.set_level(log.Level.INFO)
    log_all_level(cv2.imread("tests/data/orange.png"))
    logitem = get_html('log/cvlog.html').select('.log-list .log-item')
    assert len(logitem) == 2
    level_info_tag = logitem[0].select('.level')[0]
    assert level_info_tag.get_text() == 'INFO'
    assert level_info_tag['class'] == ['level', 'info']
    level_error_tag = logitem[1].select('.level')[0]
    assert level_error_tag.get_text() == 'ERROR'
    assert level_error_tag['class'] == ['level', 'error']
コード例 #11
0
ファイル: test_log.py プロジェクト: vinooniv/opencv-log
def test_log_hough_circles():
    remove_dirs('log/')
    img = cv2.imread('tests/data/board.jpg')
    log.set_mode(log.Mode.LOG)
    gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
    blur = cv2.medianBlur(gray, 5)
    circles = cv2.HoughCircles(blur, cv2.HOUGH_GRADIENT, 1, 10, np.array([]),
                               100, 30, 1, 30)

    log.hough_circles(log.Level.ERROR, circles, img)
    logitem = get_html('log/cvlog.html').select('.log-list .log-item')
    assert logitem[0]['logdata'] == read_file(
        'tests/data/expected/houghcircle_img.txt')
コード例 #12
0
def test_keypoints():
    remove_dirs('log/')
    img = cv2.imread('tests/data/orange.png')
    log.set_mode(log.Mode.LOG)
    gray_img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
    orb = cv2.ORB_create()
    kp, _ = orb.detectAndCompute(gray_img, None)
    log.keypoints(log.Level.ERROR,
                  kp,
                  img,
                  flags=cv2.DRAW_MATCHES_FLAGS_DRAW_RICH_KEYPOINTS)
    logitem = get_html('log/cvlog.html').select('.log-list .log-item')
    assert logitem[0].select('.log-type')[0].text == 'key points'
    print(logitem[0]['logdata'])
コード例 #13
0
def test_message():
    remove_dirs('log/')
    img = cv2.imread('tests/data/contour.jpg')
    log.set_mode(log.Mode.LOG)
    imgray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
    ret, thresh = cv2.threshold(imgray, 127, 255, 0)
    contours, hierarchy = cv2.findContours(thresh, cv2.RETR_TREE,
                                           cv2.CHAIN_APPROX_SIMPLE)
    message = 'Lorem ipsum dolor sit amet, ne persius reprehendunt mei. Ea summo elitr munere his, et consul offendit recteque sea, quis elit nam ut.'
    log.image(log.Level.ERROR, img)
    log.contours(log.Level.ERROR, contours, img, msg=message)
    logitem = get_html('log/cvlog.html').select('.log-list .log-item')
    assert logitem[0].select('.description') == []
    assert logitem[1].select('.description')[0].text == message
コード例 #14
0
ファイル: test_log.py プロジェクト: vinooniv/opencv-log
def test_no_data_section():
    remove_dirs('log/')
    log.set_mode(log.Mode.LOG)
    log_all_level(cv2.imread("tests/data/orange.png"))
    logitem = get_html('log/cvlog.html').select('#no-data')
    assert len(logitem) == 0