1
다음 중 하나가 대비 수준을 조정하는 것이 가장 좋다고 생각합니까? 사실, 나는 Photoshop에서 발견되는 대비를 조정하기 위해 동일하거나 가까운 퍼포먼스를 얻고 싶습니다.Photoshop에서 이미지의 대비 수준을 조정하는 가장 좋은 방법은 무엇입니까
public static Bitmap AdjustContrast(Bitmap Image, float Value)
{
Value = (100.0f + Value)/100.0f;
Value *= Value;
System.Drawing.Bitmap NewBitmap = Image;
for (int x = 0; x < NewBitmap.Width; ++x)
{
for (int y = 0; y < NewBitmap.Height; ++y)
{
Color Pixel = NewBitmap.GetPixel(x, y);
float Red = Pixel.R/255.0f;
float Green = Pixel.G/255.0f;
float Blue = Pixel.B/255.0f;
Red = (((Red - 0.5f) * Value) + 0.5f) * 255.0f;
Green = (((Green - 0.5f) * Value) + 0.5f) * 255.0f;
Blue = (((Blue - 0.5f) * Value) + 0.5f) * 255.0f;
NewBitmap.SetPixel(x, y, Color.FromArgb(Clamp((int)Red, 255, 0), Clamp((int)Green, 255, 0), Clamp((int)Blue, 255, 0)));
}
}
return NewBitmap;
}
public static T Clamp<T>(T Value, T Max, T Min)
where T : System.IComparable<T>
{
if (Value.CompareTo(Max) > 0)
return Max;
if (Value.CompareTo(Min) < 0)
return Min;
return Value;
}
위의 코드는 내 것이 아니며 코드 소스를 잊어 버렸습니다.
정말 고마워요. 모든 프로젝트에서이 코드를 (링크 별) 사용 해본 적이 있습니까? Colormatrix를 사용하면 이전에 대비를 조정할 때 좋은 결과를 얻지 못했습니다. – Hoque
나는 실제로 첫 번째 링크에서 언급 된 코드를 작성했다. (몇 년 전, 여전히 적용 가능하다.) 말했듯이 일반적으로 Color Matrix 클래스에 의존하지는 않지만 작동해야합니다. 두 번째 링크에 대한 기사를 읽었습니까? 그 사이트의 조언에 문제가 없었습니다. – colithium