문제

많은 사람들이 이미 샘플 이미지와 일치하는 이미지를 생성하기 위해 유전자 알고리즘을 사용하는 데모를 이미 보았을 것입니다. 당신은 노이즈로 시작하여 점차적으로 정확한 복제본이있을 때까지 대상 이미지와 점점 더 닮은 것입니다.

그러나 내가 본 모든 예제는 상당히 간단한 픽셀 별 비교를 사용하여 최종 이미지의 상당히 예측 가능한 '페이드'를 초래합니다. 내가 찾고있는 것은 더 새로운 것입니다. 순진한 접근법보다 우리가 '유사한'것으로 보이는 피트니스 측정.

특정 결과를 염두에두고 있습니다. 기본값보다 '흥미로운'것을 찾고 있습니다. 제안?

도움이 되었습니까?

해결책

나는 당신이 같은 것에 대해 이야기하고 있다고 가정합니다 Roger Alsing의 프로그램.

나는 이것의 버전을 구현 했으므로 대체 피트니스 기능에도 관심이 있지만 미학보다는 성능 향상의 관점에서 나옵니다. 나는 진화 과정의 본질로 인해 항상 "페이드 인"요소가있을 것으로 기대합니다 (진화 연산자를 조정하면 이것이 어떻게 보이는지에 영향을 줄 수 있음).

픽셀 별 픽셀 비교는 작은 이미지 외에는 비용이 많이들 수 있습니다. 예를 들어, 내가 사용하는 200x200 픽셀 이미지에는 40,000 픽셀이 있습니다. 픽셀 당 3 개의 값 (R, G 및 B)을 사용하면 단일 이미지의 피트니스 계산에 통합되어야하는 120,000 값입니다. 내 구현에서 나는 비교를하기 전에 이미지를 축소하여 픽셀이 적습니다. 트레이드 오프는 진화 된 이미지의 정확도가 약간 줄어 듭니다.

대체 피트니스 기능을 조사 할 때 나는 yuv 색상 공간 이것은 RGB 대신 인간의 인식과 더 밀접하게 일치하기 때문입니다.

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

그 외에도, 당신은 컴퓨터 비전의 영역에 있습니다. 기능 추출에 의존하는 이러한 기술은 이미지 당 더 비싸지 만 수용 가능한 결과를 달성하기 위해 세대가 줄어든다면 전체적으로 더 빠를 수 있습니다. 당신은 그것을 조사하고 싶을 수도 있습니다 지각 도서관. 또한, 이 페이지 픽셀이 아닌 기능을 기반으로 한 이미지를 비교하는 데 사용할 수있는 일부 Java 코드를 보여줍니다.

다른 팁

순진한 접근법보다 우리가 '유사한'것으로 보이는 체력 측정.

소프트웨어에서 이러한 측정을 구현하는 것은 확실히 사소하지 않습니다. Google 'Human Vision Model', 'Perceptual Error Metric', 일부 출발점. 당신은 문제를 회피 할 수 있습니다 - 최고의 이미지를 선택하기 위해 후보자 이미지를 인간에게 제시하지만, 인간에게는 약간 지루할 수 있습니다.

나는 그런 데모를 보지 못했습니다 (아마도 당신은 하나를 연결할 수 있습니다). 그러나 흥미로운 사람을 유발할 수있는 당신의 징계에서 나온 두 명의 프로토 아이스가 다음을 유발할 수 있습니다.

  • 병렬로 실행되는 세 가지 다른 알고리즘, 아마도 RGB 또는 HSV 일 것입니다.
  • 실행 중에 대상 이미지를 약간 이동, 회전 또는 달리 변경하십시오.
  • 피트니스는 픽셀 간의 대비/값 차이를 기준으로하지만 실제 색상을 알지 못했습니다.
  • ... 그런 다음 올바른 색상의 단일 픽셀 "프라임"?

나는 이것이 사소한 일이라는 다른 기고자들에게 동의합니다. 또한 상업적으로 매우 가치가 있다고 덧붙였다. 예를 들어, 시각적 IP를 보호하려는 회사는 로고와 유사한 이미지를 찾는 인터넷을 트롤 할 수있어서 매우 기쁘다.

이것에 대한 나의 순진한 접근법은 여러 이미지에서 패턴 인식기를 훈련시키는 것입니다. 각각은 하나 이상의 변환이 적용된 대상 이미지에서 생성 된 각각의 이미지에서 생성됩니다. 어느 쪽이든 몇 픽셀 번역; 같은 이미지의 다른 스케일; 다양한 흐림과 효과 (Convolution Masks가 좋습니다). 또한 각 이미지에 임의성 노이즈를 추가합니다. 샘플이 많을수록 좋습니다.

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

패턴 인식기 훈련을 받으면 GA 모집단 이미지를 가리키고 인식 자에서 스칼라 점수를 얻을 수 있습니다.

개인적으로 나는 좋아한다 방사형 기본 네트워크. 빨리 훈련. 너무 많은 입력으로 시작하여 원칙 구성 요소 분석 (IIRC)으로 휘젓습니다. 출력은 단지 비슷한 측정 및 비 유사성 측정 일 수 있습니다.

마지막 한가지; 어떤 접근 방식이든 - 블로그에 대해 블로그를 작성하고 데모를 게시 할 수 있습니까? 어떻게든지 알려주십시오.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top