본문으로 건너뛰기

cv - 이미지 비교 (:cv_compare_image)

선언

차이 도형 모음, 시각화 이미지 = 이미지:cv_compare_image(다른 이미지[, 이미지 비교 설정])

매개변수

  • 다른 이미지
    이미지 객체입니다. 비교 대상 이미지입니다.

  • 이미지 비교 설정
    테이블형입니다.

    이미지 비교 설정 필드
    {
    should_visualize = false | true, -- 선택적 매개변수, 시각화 결과 출력 여부, 기본값 false
    approx_epsilon = integer_value, -- 선택적 매개변수, 윤곽 근사 시 둘레에 적용할 백분율로 복잡한 윤곽을 단순화하는 데 사용, 기본값 2
    }

반환값

  • 차이 도형 모음
    테이블형이며, 두 이미지 간 차이 영역의 도형입니다.

    도형 모음 구조
    {
    { -- 도형 1
    { -- 도형 1 꼭짓점 1
    ["y"] = number_value,
    ["x"] = number_value,
    },
    { -- 도형 1 꼭짓점 2
    ["y"] = number_value,
    ["x"] = number_value,
    },
    ...
    },
    { -- 도형 2
    { -- 도형 2 꼭짓점 1
    ["y"] = number_value,
    ["x"] = number_value,
    },
    { -- 도형 2 꼭짓점 2
    ["y"] = number_value,
    ["x"] = number_value,
    },
    ...
    },
    ...
    }
  • 시각화 이미지
    이미지 객체입니다. options.should_visualize가 true이면 이 반환값은 이미지 객체인 시각화 결과입니다.

설명

다른 이미지와 비교하여 두 이미지의 차이를 찾고, 서로 다른 영역의 도형 꼭짓점 정보를 반환합니다.
두 이미지의 크기는 같아야 합니다.

예제

local cv = require("image.cv")
local img1 = image.load_file(XXT_SCRIPTS_PATH..'/1.png')
local img2 = image.load_file(XXT_SCRIPTS_PATH..'/2.png')
-- 반환값은 하나의 도형 목록이며 여러 도형을 포함할 수 있음
local shapes, visimg = img1:cv_compare_image(img2)
nLog(shapes) -- 도형 목록의 꼭짓점 정보 출력
dialog():add_image(visimg):show() -- 차이 도형 이미지를 시각화하여 확인