我目前有一段非常慢的代码。我试图从相机中获取位图,并对其进行编辑,然后在另一个表面上重绘。
到目前为止,我正在使用1项活动,
MainPreviewActivity extends Activity implements TextureView.SurfaceTextureListener
我在TextureView上绘制相机的流,(我选择textureView而不是surfaceView的原因是因为我遇到了一些问题,获取了RGB值。)现在这里是我的代码:
public void onSurfaceTextureUpdated(SurfaceTexture surface) {
// Invoked every time there's a new Camera preview frame
mTextureView.getBitmap(bmp);
for (int x=0; x<imgWidth; x++){
for (int y=0; y<imgHeight; y++){
int color = bmp.getPixel(x,y);
Log.i("Color", Integer.toString(color));
if(color > 8355711) {
bmp.setPixel(x, y, Color.argb(255, 255, 255, 255));
}else{
bmp.setPixel(x, y, Color.argb(255, 0, 0, 0));
}
}
}
mImageView.setImageBitmap(bmp);
}
做一个黑色&amp;白色转型。 你可以看到这非常非常慢......
我想知道如何才能提高效率?