我正在尝试对我所拥有的位图图像运行去噪算法 - 该函数返回一个short [],所以我尝试将其转换为int []以生成位图,我得到了这个:
我希望它是灰度的,而不是......好吧......粉红色。有什么想法吗?
答案 0 :(得分:2)
您可以将强度用作Alpha通道,而不是复制每个RGB通道中的8位强度。在这个方案中,0对应于透明(背景颜色),255对应于完全不透明(黑色,或任何你想要的颜色 - 甚至粉红色)。这个想法类似于Jason LeBrun的提议:取每个值的高位8位,向左移24位,然后用你想要用于全强度的颜色按位或(如果你想用黑色表示,则不带任何颜色)全力以赴)。
答案 1 :(得分:0)
使用ARGB_8888,RGB_565,ARGB_4444或ALPHA_8对位图的像素进行编码。因此,您返回的短值必须与其中一种格式中略微呈粉红色的值相对应。
如果需要灰度位图,则只能使用0-256范围内的值(如果使用ARGB_8888,则为8位的最大珍贵颜色分量)。因此,您需要将short缩放到该范围内的值,然后为每个RGB组件复制该值。