// onCameraFrame 回调以下 (参数为 frame)--------- var buffer = frame.data; var dataview = new DataView(buffer); let i = 0; // 第 i+1 个 点的rgba 中的 r色值 var r = dataview.getInt8(i*4) var g = dataview.getInt8(i*4+1) var b = dataview.getInt8(i*4+2)
cameraContext.onCameraFrame((frame) =>{获取像素问题}?尊敬的微信团队,求教一个问题,新手,实在搞不懂。 cameraContext.onCameraFrame((frame) => { let uint8Array=new Uint8ClampedArray(frame.data); for(var h=0;h<height;h++) { for(var w=0;w<width;w++) { var pixelIndex=((h*width)+w)*4;//rgba; var pixelRed=uint8Array[pixelIndex]; var pixelGreen=uint8Array[pixelIndex+1]; var pixelBlue=uint8Array[pixelIndex+2]; } } } 问题: 上代码获取pixelRed和pixelGreen和pixelBlue都为零?想获取pixelBlue的值0~255,如何实现,谢谢了。 麻烦回复,恳教大家帮帮忙,就是要从frame.data获取每个像素点的r g b值。麻烦了。
2021-05-10