Go 이미지에서 픽셀 배열을 얻는 방법
Go에서는 파일에서 로드된 이미지에서 픽셀 배열을 얻을 수 있습니다. 이미지 패키지를 사용합니다. 이 배열은 /mobile/gl 패키지에서 Contex의 texImage2D 메소드로 전달될 수 있습니다.
픽셀 배열을 얻으려면 다음 단계를 따르세요.
파일의 이미지:
a, err := asset.Open("key.jpeg") if err != nil { log.Fatal(err) } defer a.Close() img, _, err := image.Decode(a) if err != nil { log.Fatal(err) }
저장할 2차원 배열 생성 픽셀 값:
var pixels [][]Pixel
이미지 픽셀을 반복하고 해당 RGBA 값을 추출합니다.
bounds := img.Bounds() width, height := bounds.Max.X, bounds.Max.Y for y := 0; y < height; y++ { var row []Pixel for x := 0; x < width; x++ { r, g, b, a := img.At(x, y).RGBA() pixel := rgbaToPixel(r, g, b, a) row = append(row, pixel) } pixels = append(pixels, row) }
RGBA 값을 다음으로 변환합니다. 픽셀:
func rgbaToPixel(r uint32, g uint32, b uint32, a uint32) Pixel { return Pixel{int(r / 257), int(g / 257), int(b / 257), int(a / 257)} }
반환 픽셀 배열:
return pixels
반환된 픽셀 배열은 texImage2D 메소드에 전달되어 이미지를 표시할 수 있습니다.
위 내용은 Go 이미지에서 픽셀 배열을 추출하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!