Xin chào các bạn Tôi cần sự giúp đỡ của bạn, tôi đang cố gắng chuyển đổi hình ảnh màu thành màu xám bằng cách sử dụng trung bình của màu đỏ, xanh lục, xanh lam. Nhưng nói ra có lỗi,Android: Chuyển đổi hình ảnh màu thành màu xám
Đây là mã của tôi
imgWidth = myBitmap.getWidth();
imgHeight = myBitmap.getHeight();
for(int i =0;i<imgWidth;i++) {
for(int j=0;j<imgHeight;j++) {
int s = myBitmap.getPixel(i, j)/3;
myBitmap.setPixel(i, j, s);
}
}
ImageView img = (ImageView)findViewById(R.id.image1);
img.setImageBitmap(myBitmap);
Nhưng khi tôi chạy ứng dụng của tôi trên Emulator, đó là lực lượng chặt chẽ. Bất kỳ ý tưởng?
Tôi đã giải quyết vấn đề của tôi sử dụng đoạn mã sau:
for(int x = 0; x < width; ++x) {
for(int y = 0; y < height; ++y) {
// get one pixel color
pixel = src.getPixel(x, y);
// retrieve color of all channels
A = Color.alpha(pixel);
R = Color.red(pixel);
G = Color.green(pixel);
B = Color.blue(pixel);
// take conversion up to one single value
R = G = B = (int)(0.299 * R + 0.587 * G + 0.114 * B);
// set new pixel color to output bitmap
bmOut.setPixel(x, y, Color.argb(A, R, G, B));
}
}
Nhật ký lỗi đăng bài lỗi là gì. – user370305
Bạn có gặp phải lỗi chính xác nào trong nhật ký không? chẳng hạn như stackoverflow? – doNotCheckMyBlog