Tutorial | Tracing Pixel Art우리가 강력한 벡터 편집 소프트웨어에 접근하기 전에 ...우리가 640 × 480의 모니터를 갖기 전에 ...저해상도 디스플레이에서 세심하게 그려진 픽셀로 비디오 게임을 하는 것은 꽤 일반적이었습니다.이런 종류의 예술을 우리는 "픽셀 아트"라고 부릅니다.Inkscape는 이러한 매우 특별한 픽셀 아트 이미지를 자동으로 벡터화 할 수있는 libdepixelize 라이브러리를 사용합니다. 다른 유형의 이미지에도 이 기능을 사용할 수 있지만 결과는 다른 Inkscape 벡터링 도구 인 potrace만큼 좋지 않을 수 있습니다.이 벡터화 엔진의 기능을 보여주기 위해 예제부터 시작해 보겠습니다. 다음은 왼쪽에 Liberated Pixel Cup에서 가져온 비트 맵 이미지와 오른쪽에있는 벡터화 된 출력의 예입니다.libdepixelize는 Kopf-Lischinski 알고리즘을 사용하여 이미지를 벡터화합니다. 이 알고리즘은 여러 컴퓨터 기술 및 수학 개념의 아이디어를 사용하여 픽셀 아트 이미지로 만족스러운 결과를 산출합니다. 알고리즘은 알파 채널을 완전히 무시합니다. 중요한 것은 libdepixelize에는 현재 이 이미지 클래스를 복원하는 확장자가 없지만 알파 채널을 지원합니다. 그러나 알파 채널을 포함하는 픽셀 아트 이미지의 벡터화는 Kopf-Lischinski가 인식 한 이미지와 비슷한 결과를 제공합니다.위의 이미지는 알파 채널을 포함하며 벡터화가 적합합니다. 그럼에도 불구하고이 결과가 만족스럽지 않고 그 원인이 알파 채널이라고 생각하면 libdepixelize 라이브러리 관리자에게 문의하십시오 (프로젝트 페이지에 기본 보고서를 입력) 알고리즘 개선에 도움을 줄 것입니다. .프로젝트 작성자가 오류를 알지 못 하면 알고리즘을 향상시킬 수 없습니다.The image below is a screenshot of Pixel art dialog in the English localisation. You can open this dialog using the PathTrace BitmapPixel art menu or right-clicking on an image object and then Trace Bitmap.이 대화 상자는 휴리스틱과 출력의 두 부분으로 구성됩니다. 경험적 방법은 고급 사용자를 대상으로하지만 기본 설정은 이미 훌륭하므로 걱정할 필요가 없으므로 나중에 그대로두고 출력을 설명하는 것으로 시작하십시오.Kopf-Lischinski 알고리즘은 여러 유형의 표현간에 데이터를 변환하는 컴파일러로 작동합니다 (높은 수준으로 배치). 각 단계에서 알고리즘은이 표현이 제안하는 연산을 탐색 할 수있는 선택권을 갖습니다. 이러한 중간 표현 중 일부는 올바른 시각적 표현 (보로 노이 알고리즘의 출력을 재구성 한 셀 그래프)과 일부 (유사성 그래프)가 아닙니다. libdepixelize 개발 중에 사용자는 중간 단계를 내보낼 수있는 기능을 추가 할 것을 요청했으며 개발자는 제안 된 혁신을 도입하기로 동의했습니다.The default output should give the smoothest result and is probably what you want. You saw already the default output on the first samples of this tutorial. If you want to try it yourself, just open the Trace Bitmap dialog, select Pixel art tab and click in OK after choosing some image on Inkscape.아래의 Voronoi 유형 결과는 동일한 기능의 일부인 픽셀을 연결하기 위해 셀 (이전의 픽셀)이 다시 형상화 된 리모델링 된 픽셀 이미지입니다. 곡선이 작성되지 않고 이미지는 항상 직선으로 구성됩니다. 차이는 이미지를 확대하여 관찰 할 수 있습니다. 이전에는 픽셀이 동일한 함수의 일부인 경우에도 픽셀이 대각선 이웃과 가장자리를 공유 할 수 없었습니다. 하지만 이제는 (더 나은 결과를 얻기 위해 조정할 수있는 색상 유사성 그래프 덕분에) 두 개의 대각선 셀이 가장자리를 공유하게 할 수 있습니다 (이전에는 두 개의 꼭지점 만 공유 할 수있었습니다).이전에 얻은 Voronoi 이미지가 2 차 베지어 곡선으로 변환되기 때문에 표준 B 스플라인 변환은 더 부드러운 결과를 제공합니다. 그러나 알고리즘은 알고리즘이 가시적인 색상의 T- 접점에 도달 할 때 병합될 커브를 결정하기 위해 발견적 작업이 필요하기 때문에 변환은 1 : 1이 아닙니다. 이 단계의 휴리스틱에 대해 제안합니다. 아직 사용자 정의 할 수 없습니다.libdepixelize의 최종 단계는 B- 스플라인 곡선의 단계별 효과를 제거하기위한 곡선 최적화입니다(현재 불완전하기 때문에 Inkscape 인터페이스로 내 보내지 않음). 일부 평활화 피쳐를 방지하기 위해이 단계에서 테두리 감지가 수행되고 최적화 후 노드의 위치를 ​​수정하기 위해 삼각 측량이 적용됩니다. libdepixelize에서이 출력이 더 이상 실험적으로 고려되지 않을 때 (각각의 기능을 개별적으로 비활성화 할 수 있습니다.)인터페이스의 휴리스틱 섹션을 사용하면 libdepixelize가 사용하는 휴리스틱을 사용자 정의하여 두 대각선이 비슷한 색상을 가진 2x2 픽셀 블록을 발견했을 때 수행 할 작업을 결정할 수 있습니다 .libdepixelize가 묻는 것은 "어떤 연결을 유지해야합니까?" 이다. 그는 충돌하는 대각선에 모든 경험치를 적용하고 승자와의 연결을 유지합니다. 바인딩이 발생하면 두 연결이 모두 제거됩니다.각 휴리스틱의 효과를 분석하고 매개 변수화로 재생하려는 경우 Voronoi 다이어그램을 사용하면 최상의 결과를 얻을 수 있으므로 선택한 값으로 생성 된 렌더링을 쉽게 시각화 할 수 있습니다. 설정에 만족하면 결과 유형을 원하는대로 변경할 수 있습니다.아래 예제는 이미지와 B- 스플라인 출력을 보여 주며 각 테스트에서 하나의 휴리스틱이 활성화되었습니다. 각 휴리스틱에서 가져온 차이점은 보라색 원으로 강조 표시됩니다.첫 번째 시도 (상단 이미지)에는 곡선의 경험적 발견 만 포함됩니다. 이 경험적 방법은 긴 곡선을 서로 연결되도록 유지하려고 시도합니다. 희소 픽셀 경험적 방법이 적용된 마지막 이미지와 그 결과가 비슷하다는 것을 알 수 있습니다. 차이점 중 하나는 연결을 유지하는 것이 정말 중요 할 때이 경험적 방법의 "강점"이보다 공정하고 적용 가능하다는 것입니다. "정의"의 정의는 분석 된 데이터의 데이터베이스에서 픽셀에 적용되는 "인간의 직감"을 기반으로 합니다. 또 다른 차이점은이 휴리스틱(heuristic)는 연결 그룹이 긴 블록이 아닌 커다란 블록 (체스 판을 상상해보십시오)이 아닌 경우 어떻게해야 할지를 결정할 수 없다는 것입니다.두 번째 시도 (중간 이미지)의 경우 섬 휴리스틱 만 포함됩니다. 이 경험적 방법을 만드는 유일한 방법은 연결을 유지하려고 시도하는 것입니다. 그렇지 않으면 끊임없이 "투표 가중치"가있는 여러 개의 고립 된 픽셀 (섬)이 생깁니다. 이러한 상황은 다른 휴리스틱 스에 의해 처리되므로이 상황은 그리 일반적이지 않습니다. 그러나 이러한 경우의 경험적 접근 방식은 더 나은 결과를 제공합니다.세 번째 시도 (하단 이미지)에 대해 희소한 픽셀 추론을 사용하도록 설정했습니다. 이 경험적 방법은 전경색이 연결된 커브를 반대 방향으로 시도합니다. 이 색상을 결정하기 위해 휴리스틱은 충돌하는 커브의 인접한 픽셀을 포함하는 창을 분석합니다. 강도를 조정할 수있을 뿐만 아니라 분석 할 픽셀 창의 크기도 조정할 수 있습니다. 이 창을 늘리면 투표의 힘이 증가하므로 배율을 변경하여 균형을 재조정해야 할 수도 있습니다. libdepixelize의 원 작성자는이 경험적 방법을 지나치게 욕심으로 생각하며 배율에 0.25를 권장합니다.곡선 발견 적방법과 희소한 픽셀 발견적 방법의 결과가 유사한 결과를 가져 오는 경우에도 두 가지를 모두 사용하는 것이 좋습니다. 왜냐하면 곡선 발견 적 방법은 등고선 픽셀의 중요한 곡선이 방해받지 않고 추가적인 경우 안전성을 줄 수 있기 때문입니다 그것은 드문 드문한 발견적 (hearistic) 픽셀에 의해서만 응답 될 수 있습니다.팁 : 승수와 가중치를 0으로 설정하여 추론을 비활성화 할 수 있습니다. 동일한 매개 변수에 음수 값을 사용하여 휴리스틱 스를 원리에 맞게 작동시킬 수 있습니다. 그런 선택으로 이미지의 품질을 떨어 뜨리는 이유는 무엇입니까? 글쎄, 그것은 가능하기 때문에, 또는 당신이 "예술적"결과를 원할 수도 있기 때문입니다... 그리고 그건 중요하지 않습니다 ... 당신은 그걸 원했을뿐입니다.그게 다야! libdepixelize의 초기 릴리스에서 사용 가능한 모든 옵션을 살펴 보았습니다. 그러나 저자와 그의 멘토의 연구가 성공한다면 미래에 결과가 만족스러운 이미지 분야를 확장 할 수 있는 새로운 옵션을 얻을 수 있습니다. 행운을 빕니다!.여기에 사용 된 모든 이미지는 저작권 문제를 피하기 위해 Liberated Pixel Cup에서 가져 왔습니다. 링크는 다음과 같습니다:http://opengameart.org/content/mementohttp://opengameart.org/content/rpg-enemies-bathroom-tilesVinícius dos Santos Oliveira; Nicolas Dufour; Kris De Gussem; Gellért Gyurisyunhee Lee — 2019Esteban Capella — 2019