2012-10-04 8 views
0

이미지를 회색 음영으로 열고, numpy 플로트 배열로 변환하고, 많은 수학 연산을 수행 한 다음 정규화하고이를 이진으로 변환하는 코드가 있습니다. 이미지 (픽셀 당 1 비트)를 다시 디스크에 저장합니다 (PNG 파일).이미지를 float 배열로 변환하고 .NET에서 다시 변환합니다.

비슷한 작업을 수행하기 위해 .NET 클래스 (선호)를 사용해야합니까?

im = Image.open(in_name) 
a = numpy.asarray(im.convert('L'), dtype=float) ## implicit conversion to grayscale 

## lots of element-wise arithmetical operations with 'a' 
## and other similar-shaped arrays from other images 

out_im = Image.fromarray(a.astype('uint8')).convert('1') 
out_im.save(out_name) 

답변

0

가이 작업을 수행하는 두 가지 방법이 있습니다 : 아래

내 파이썬 코드의 하위 집합입니다. XNA 또는 DirectX가 필요합니다.

XNA Texture2D에는 개체가 원하는 작업을 수행하는 GetData 및 SetData 메서드가 포함되어 있습니다.

Texture2D에서 HLSL 픽셀 쉐이더를 사용하여 조작 할 수도 있습니다. 렌더링 타겟을 변경하여 이미지 파일로 저장 한 다른 Texture2D로 렌더링 할 수 있습니다.

두 번째가 가장 빠르고 효율적이며 첫 번째가 가장 쉽습니다.

관련 문제