4

많은 사람들이 이미 유전 알고리즘을 사용하여 샘플 이미지와 일치하는 이미지를 생성 한 데모를 이미 보았을 것입니다. 당신은 소음으로 시작하고 점차적으로 정확한 복제본을 얻을 때까지 점차적으로 대상 이미지를 닮아갑니다.진화 이미지 매칭 시뮬레이션을위한 새로운 적합성 측정

그러나 필자가 보았던 모든 예제는 상당히 간단한 픽셀 별 비교를 사용하여 최종 이미지를 상당히 예측할 수있는 '페이드 인'결과를 얻었습니다. 내가 찾고있는 것은 더 소설적인 것입니다. 우리가 순진적인 접근 방식과 비슷한 것으로 보이는 것에 더 가까운 적합성 측정 값입니다.

마음에 구체적인 결과가 없습니다. 기본값보다 더 재미있는 것을 찾고 있습니다. 제안?

+0

"샘플 이미지와 일치하는 이미지를 생성하는"유전 알고리즘을 말하면 정확히 무엇을 의미합니까? 항상 훈련 된 동일한 이미지를 생성하는 알고리즘을 의미합니까? 그렇다면, 거기에 어떤 압축 방법이 있을까요? (그렇지 않다면 요점은 무엇입니까?) –

+0

예, '대상'이미지를 제공하고 이미지와의 친밀감을 바탕으로 모든 사람에게 점수를 매 깁니다. 요점은 데모입니다. 압축이나 기타 구체적인 목표를 제공하는 것이 아닙니다. –

+0

죄송합니다. 아직 이해가 안됩니다 - 개인은 무엇입니까? 기타, 처음에 시끄러운 이미지? 또는 단일 이미지의 개별 픽셀? –

답변

3

나는 당신이 Roger Alsing's program과 같은 것을 말하고 있다고 가정합니다.

나는이 버전을 구현 했으므로 대안적인 피트니스 기능에도 관심이 있습니다. 미적 특성보다는 성능을 향상시키는 관점에서 생각하고 있습니다. 나는 진화론 적 과정의 특성으로 인해 "퇴색"의 요소가 항상있을 것으로 기대한다.

픽셀 별 비교는 작은 이미지 이외에는 비용이 많이들 수 있습니다. 예를 들어, 내가 사용하는 200x200 픽셀 이미지에는 40,000 픽셀이 있습니다. 픽셀 당 세 개의 값 (R, G 및 B)을 사용하면 하나의 이미지에 대한 적합성 계산에 통합해야하는 120,000 개의 값이 있습니다. 내 구현에서는 필자는 비교를하기 전에 이미지 크기를 줄여서 픽셀 수가 적어 지도록했습니다. 절충은 진화 된 이미지의 정확도를 약간 줄입니다.

대체 피트니스 기능을 조사 할 때 RGB 대신 YUV colour space을 사용하라는 제안이 나왔습니다. 이는 인간의 인식과 더욱 밀접하게 관련되어 있기 때문입니다.

내가 가진 또 다른 아이디어는 무작위로 선택한 픽셀 샘플을 비교하는 것입니다. 나는 이것을 시도하지 않고 얼마나 효과가 있을지 잘 모르겠습니다. 비교 된 픽셀은 각 평가마다 다를 것이므로 인구 내에서 다양성을 유지하는 효과가 있습니다.

너는 컴퓨터 비전의 영역에 있습니다. 피쳐 추출에 의존하는 이러한 기법은 이미지 당 비용이 더 많이들 것이라 예상되지만 수용 가능한 결과를 얻기 위해 필요한 세대가 줄어들면 전반적으로 더 빠를 수도 있습니다. PerceptualDiff 라이브러리를 조사하고 싶을 수 있습니다. 또한 this page은 픽셀이 아닌 기능을 기반으로 이미지를 비교하는 데 사용할 수있는 몇 가지 Java 코드를 보여줍니다.

+0

아하, 그건 하나였습니다! 감사! –

0

나는 그런 데모를 보지 못했다. 흥미 진진한 방아쇠를 당길 수있는 몇 가지 프로토 아이디어 :

  • RGB 또는 HSV와 같은 세 가지 알고리즘이 병렬로 실행됩니다.
  • 실행 중에 대상 이미지를 약간 이동, 회전 또는 변경하십시오.
  • 휘도는 픽셀 간의 대비/값 차이를 기반으로하지만 실제 색상을 알지 못합니다.
  • ... 그럼 올바른 색상으로 단일 픽셀을 "프라임"합니까?
1

우리가 순진적인 접근 방식과 비슷한 것으로 보이는 것에 더 가깝게되는 적합성 척도.

소프트웨어에서 이러한 측정 값을 구현하는 것은 분명 중요하지 않습니다. 일부 출발점에 대한 Google의 '인간 시각 모델', '지각 오류 측정 기준'. 문제를 피할 수 있습니다 - 인간에게 조금 지루할 지 모르지만 최선의 이미지를 선택하기 위해 후보 이미지를 인간에게 제시하십시오.

+0

그래서 내가 '더 가깝다', '동일하지 않다'고 말한 이유입니다. 픽셀 단위 비교보다 더 나은 것이 있지만 AI를 구현하는 것보다 쉽습니다. :) –

+0

인간을 사용하는 것은 그다지 좋지 않습니다. 그러나 인간은 두 개의 서로 다른 무작위 노이즈 이미지를 비교할 때 오히려 제대로 수행하지 않습니다. –

+0

이것은 이미지 생성 방법에 따라 다릅니다. 제한된 수의 투명한 닫힌 베 지어 곡선을 사용하여 이미지를 근사하는 진화 알고리즘에 대한 기사를 보았습니다. –

0

다른 참여자들과 동의합니다. 또한 상업적으로 매우 가치가 있다고 덧붙입니다. 예를 들어, 회사의 시각적 IP를 보호하려는 회사는 비슷한 이미지를 찾고있는 인터넷을 트롤링 할 수있어 매우 행복 할 것입니다.

내 순수한 접근 방식은 하나 이상의 변환이 적용된 대상 이미지에서 각각 생성 된 여러 이미지에 패턴 인식기를 적용하는 것입니다. 어느 정도 각도로 회전; 번역은 몇 가지 방법 중 하나 픽셀; 동일한 심상의 다른 가늠자; 다양한 흐림 및 효과 (여기에서는 회선 마스크가 좋습니다). 또한 각 이미지에 임의 노이즈를 추가 할 것입니다. 샘플이 많을수록 좋습니다.

교육은 모두 오프라인에서 수행 할 수 있으므로 런타임 성능에 문제가 발생하지 않아야합니다.

패턴 인식기를 익히면 GA 인구 통계 이미지를 가리키고 인식기에서 스칼라 점수를 얻을 수 있습니다.

개인적으로 나는 Radial Basis Networks을 좋아합니다. 빠른 기차. 나는 너무 많은 입력부터 시작하여 원리 구성 요소 분석 (IIRC)을 사용하여 이들을 절제했습니다. 산출물은 유사성 척도와 비평 행성 척도가 될 수 있습니다.

마지막으로 한 가지; 어떤 접근 방식이든 - 블로그에 대해 블로그를 게시하고, 데모를 게시하고, 무엇이든 할 수 있습니다. 어떻게 지내는지 알려주세요.