jjzjj

getpixel

全部标签

c# - Bitmap.LockBits 给出错误的值?

我在将一些代码从Bitmap.GetPixel更改为使用LockBits返回的直接像素缓冲区时遇到问题。与GetPixel相比,LockBits返回的数据似乎确实给了我不同的颜色值。这很不幸,因为此更改确实会产生不同的颜色,这会破坏自动化单元测试。我有一个29*30像素的png文件,我确实将Format32bppArgb加载到位图中。这真的是LockBits和GetPixel返回的数据不同吗?我该如何解决这个问题?这里是一些用加载的位图重现它的代码publicunsafestaticBitmapConvert(BitmaporiginalBitmap){Bitmapconverted=

c++ - 为什么使用 GetPixel 会导致 "undefined reference"?

#include#include#include#include#includeusingnamespacestd;intmain(){HDCdc=GetDC(NULL);COLORREFcolor=GetPixel(dc,10,10);ReleaseDC(NULL,dc);cout有一个错误说:[Linkererror]undefinedreferenceto`GetPixel@12'ldreturned1exitstatus[BuildError][Project1.exe]Error1我正在使用Dev-C++编译器 最佳答案

java - Android - 将 ARGB 颜色转换为 HEX

我有一个ARGB颜色(看起来像255200200000)。我试图用这段代码将它转换成十六进制格式:Stringcol="#"+Integer.toString(Color.alpha(img.getPixel(j,i)),16)+Integer.toString(Color.red(img.getPixel(j,i)),16)+Integer.toString(Color.green(img.getPixel(j,i)),16)+Integer.toString(Color.blue(img.getPixel(j,i)),16);但我得到的是(#FFC8C8)而不是(#FFC8C800

android - Bitmap.getPixels() 中的 IllegalArgumentException

我想使用getPixels()将位图中的数据复制到int[]中,这是我当前的代码:int[]pixels=newint[myBitmap.getHeight()*myBitmap.getWidth()];myBitmap.getPixels(pixels,0,myBitmap.getWidth(),0,0,myBitmap.getHeight(),myBitmap.getWidth());for(inti=0;i但是它抛出一个异常:05-0420:24:08.281:ERROR/AndroidRuntime(5700):Uncaughthandler:threadmainexiting

java - 提高 Android 位图上 getpixel() 和 setpixel() 的速度

全部,在我注意到有多慢之后getPixel和setPixel是(不确定是哪一个,猜测两者都没有涡轮增压)我很快为Bitmap编写了一个容器使用int[]数组来处理位图操作。已经-它明显更快,但这还不够。请您建议如何进一步加快速度?我的想法是跟踪setPixel使什么变“脏”函数并仅更新这部分Bitmap什么时候getBitmap()被称为...不清楚如何设置setPixels参数虽然(我猜是带有偏移量和步幅的东西)。此外-有更快的食谱吗?提前感谢所有帮助!importandroid.graphics.Bitmap;publicclassDrawableBitmapContainer{p

java - Android 中 Bitmap 的 getPixels 方法说明

如何解释位图的内置方法getPixels返回的数组?这是我的代码:publicvoidfoo(){int[]pixels;BitmapbitmapFoo=BitmapFactory.decodeResource(mContext.getResources(),R.drawable.test2);intheight=bitmapFoo.getHeight();intwidth=bitmapFoo.getWidth();pixels=newint[height*width];bitmapFoo.getPixels(pixels,0,width,1,1,width-1,height-1);}

android - 使用 getPixel() 方法提取的巨大负值

我正在开发的图像处理应用程序有问题(这里是新手)。我正在尝试使用getPixel()方法提取特定像素的值。不过我遇到了问题。我从这种方法中得到的数字是一个巨大的负数,类似于-1298383。这是正常的吗?我该如何解决?谢谢。 最佳答案 我不是专家,但对我来说,您似乎获得了十六进制值。也许您想要更易于理解的东西,例如每个RGB层的值。要解压一个像素到它的RGB值中,你应该这样做:privateshort[][]red;privateshort[][]green;privateshort[][]blue;/***Mapeachinten

Android:相机、onSurfaceTextureUpdated、Bitmap.getPixels - 帧率从 30 下降到 3

在尝试获取相机预览的像素时,我的表现非常糟糕。图像格式约为600x900。在我的HTCone上,预览速率非常稳定,为30fps。一旦我尝试获取图像的像素,帧率就会下降到5以下!publicvoidonSurfaceTextureUpdated(SurfaceTexturesurfaceTexture){Bitmapbmp=mTextureView.getBitmap();intwidth=bmp.getWidth();intheight=bmp.getHeight();int[]pixels=newint[bmp.getHeight()*bmp.getWidth()];bmp.getP

Android getPixels() 可能是一个愚蠢的错误?

好吧,这很容易理解,但是由于一些奇怪的原因我无法让它工作。我已经从实际代码中简化了这个例子。InputStreamis=context.getResources().openRawResource(R.raw.someimage);Bitmapbitmap=BitmapFactory.decodeStream(is);try{int[]pixels=newint[32*32];bitmap.getPixels(pixels,0,800,0,0,32,32);}catch(ArrayIndexOutOfBoundsExceptionex){Log.e("testing","ArrayIn

android - ALPHA_8 位图和 getPixel

我正在尝试从PNG图像加载运动图。为了节省内存加载位图后,我会做类似的事情。`BitmapmapBmp=tempBmp.copy(Bitmap.Config.ALPHA_8,false);`如果我绘制mapBmp,我可以看到map,但是当我使用getPixel()时,我得到始终为0(零)。有没有其他方法可以从位图中检索ALPHA信息用getPixel()? 最佳答案 似乎是Android在处理ALPHA_8时的错误。我还尝试了copyPixelsToBuffer,但无济于事。最简单的解决方法是浪费大量内存并使用ARGB_8888。I
12