2009-04-25 3 views
5

저는 포토샵에서 액센트 필터와 같은 것을 만들려고합니다. 나는 이미지 왜곡 코드를 통해 독해를하고 있었지만, 비슷한 효과를 낼 수있는 것을 찾는 데 어려움을 겪고있다. 내가 찾을 수있는 가장 가까운 참조는 Gimp의 iWarp 필터 였지만 그 코드는 전혀 주석 처리되지 않았습니다.액 정화 필터/iwarp

또한 ImageMagick과 같은 곳을 검토 한하지만 그들은 크게 감상 할 수있다이 지역

모든 포인터 또는 알고리즘의 설명에 아무것도하지 않습니다.

답변

0

이 사운드를 조금 단순하게 만들면 실례합니다. gfx 프로그래밍이나 사용중인 기술에 대해 얼마나 알고 있는지 잘 모르겠습니다. (직접 HLSL로 해보겠습니다.)

내가이 문제에 접근하는 방법은 r/g 채널에서 x/y 좌표의 오프셋을 포함하는 텍스처를 생성하는 것입니다. 그 후 화소의 출력 컬러는 것이다 :
질감 inputImage
질감 distortionMap
컬러 (X, Y) = inputImage (X + distortionMap (X, Y) .R, Y + distortionMap (X, Y) · G)
(오프셋 직접 만 지금은) 당신이 부정적인 벡터를 나타낼 수 있도록 0.5을 뺄

정도로 간단 유일한 긍정적 인 벡터를 나타낼 수있는 수단으로서 색상을 사용하여,이 매우 옳지 않아 진실을 얘기하려면 남아있는 문제는 다른 질문 인이 왜곡 맵을 생성하는 방법입니다 (모든 이미지는 일종의 왜곡을 생성 할 것입니다. 분명히 적절한 액상화 효과에 대한 작업은 상당히 복잡하고 som 더 자격이 있음).

0

제가 액화는 그리드를 변경하여 작동한다고 생각합니다.
각 픽셀이 눈금의 위치로 정의된다고 상상해보십시오.
사용자가 위치를 클릭하고 마우스를 움직이면 그리드 위치가 변경됩니다.
새 그리드가 다시 사용자의 2D보기 가능 공간에 투영됩니다.

0

this tutorial에 Javascript로 액상 필터를 구현하는 방법을 확인하십시오. 기본적으로이 튜토리얼에서는 픽셀 직교 좌표 (x, y)을 극좌표 (r, α)으로 변환 한 다음 Math.sqrtr에 적용하여 효과를 수행합니다.

관련 문제