Я плохо знаком с этим сайтом, и я иду с вопросом о Android.
Там какой-либо путь состоит в том, чтобы преобразовать Битовый массив в шкалу полутонов? Я знаю, как потянуть полутоновый битовый массив (использование операций холста: http://www.mail-archive.com/android-developers@googlegroups.com/msg38890.html), но мне действительно нужен фактический битовый массив в серых цветах (или по крайней мере что-то, что могло быть преобразовано в битовый массив позже). Я должен реализовать его вручную (попиксельные операции)?
Я искал много и все еще не мог найти. Кто-либо знает легкий/эффективный способ сделать это?
Большое спасибо!
Разве это не то, что делает код, на который вы ссылаетесь? Он берет цветное растровое изображение («bmp»), создает дубликат растрового изображения («bm»), а затем рисует цветное растровое изображение в «bm», используя фильтр, чтобы преобразовать его в оттенки серого. С этого момента вы можете использовать «bm» как фактическое растровое изображение в градациях серого и делать с ним все, что захотите.
Вам нужно будет немного подправить сэмпл (он использует жестко запрограммированные размеры, вы можете просто клонировать размер исходного растрового изображения), но в остальном он кажется готовым к использованию как получится, в зависимости от того, что вы хотите.
О, да, это так. Я использовал это неправильно, спасибо, что указали мне на это. (Извините за бесполезный вопрос) Вот конечный код (в значительной степени основанный на том, который связан с ним), поскольку он может кому-то помочь:
public Bitmap toGrayscale(Bitmap bmpOriginal)
{
int width, height;
height = bmpOriginal.getHeight();
width = bmpOriginal.getWidth();
Bitmap bmpGrayscale = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);
Canvas c = new Canvas(bmpGrayscale);
Paint paint = new Paint();
ColorMatrix cm = new ColorMatrix();
cm.setSaturation(0);
ColorMatrixColorFilter f = new ColorMatrixColorFilter(cm);
paint.setColorFilter(f);
c.drawBitmap(bmpOriginal, 0, 0, paint);
return bmpGrayscale;
}
Любые замечания или комментарии к нему очень приветствуются.
Спасибо