HarmonyOS图片文件读取的RGB 通道数据与其它平台有差异
对一张图片,读取其 RGB 通道数据,HarmonyOS读取的数据却是 RGB 160,177,195,与其他平台有差异,详细代码如下:
context.resourceManager.getRawFileContent('test.jpg').then(value => {
let buf = new ArrayBuffer(value.length)
let tempBuffer = new Uint8Array(buf)
for (let i = 0; i < value.length; i++) {
tempBuffer[i] = value[i]
}
const imageSource = image.createImageSource(buf)
// Set the image format to BGRA_8888.
imageSource.createPixelMap({desiredPixelFormat : image.PixelMapFormat.RGBA_8888})
.then(async pixelMapObj => {
pixelMapObj.getImageInfo().then(info => {
let resizeH = info.size.height
let resizeW = info.size.width
const readBuffer = new ArrayBuffer(pixelMapObj.getPixelBytesNumber())
pixelMapObj.readPixelsToBuffer(readBuffer, (err, res)=> {
if (err) {
hilog.info(0x0000, 'HiAIFoundationDemo', 'Failed to read image pixel data.')
return
} else {
let dataArray = new Uint8Array(readBuffer)
// rt_normalized
let channel = 3
let inputData = new Float32Array(channel * resizeW * resizeH)
for (let i = 0; i < resizeW * resizeH; i++)
{
let m1 = dataArray[i * 4 + 0];
let m2 = dataArray[i * 4 + 1];
let m3 = dataArray[i * 4 + 2];
let r = (m1/255.0 - 0.485)/0.229;
let g = (m2/255.0 - 0.456)/0.224;
let b = (m3/255.0 - 0.406)/0.225;
inputData[i] = r;
inputData[resizeW * resizeH + i] = g;
inputData[resizeW * resizeH * 2 + i] = b;
}
})
})
})
})
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
读取数据文件的方法有哪些
126浏览 • 1回复 待解决
HarmonyOS db文件无法读取到数据
134浏览 • 1回复 待解决
DevEco Studio 怎么生成 RGB565 的 bin 文件
2765浏览 • 1回复 待解决
HarmonyOS如何读取文件
95浏览 • 1回复 待解决
HarmonyOS fs模块读取文件的问题
109浏览 • 1回复 待解决
读取振弦传感器频率为什么会有差异?
2961浏览 • 0回复 待解决
鸿蒙JS 图片读取 请问怎么读取到摄像机拍摄的图片?
2671浏览 • 1回复 待解决
fs.readTextSync方法为什么只能读取到文件的一行,有什么方法读取全部文件?
1686浏览 • 1回复 待解决
HarmonyOS上tar文件,进行untar读取操作,是否有lib库支持
56浏览 • 1回复 待解决
HarmonyOS 读取raw文件参考示例
177浏览 • 1回复 待解决
HarmonyOS 文件上传 & 资源读取问题
73浏览 • 1回复 待解决
如何读取相册中的图片
416浏览 • 1回复 待解决
在HarmonyOS平台上测试验证so文件功能
49浏览 • 1回复 待解决
HarmonyOS项目中json文件文本读取
143浏览 • 1回复 待解决
HarmonyOS 差异化构建
117浏览 • 1回复 待解决
如何读取读取分布式路径下的文件
131浏览 • 1回复 待解决
读取rawfile下的文件如何读取所有的内容?
1503浏览 • 1回复 待解决
HarmonyOS ArkTS怎么读取指定目录下的所有文件
140浏览 • 1回复 待解决
创建数据文件的方法有哪些?
128浏览 • 1回复 待解决
HarmonyOS DevEco Testing平台上传文件提示安装失败
161浏览 • 1回复 待解决
HarmonyOS如何读取rawfile中的文件的,并返回byte数组
73浏览 • 1回复 待解决
关系型数据库如何在设备间同步数据、如何查询其它设备上的数据
1325浏览 • 1回复 待解决
怎么读取sdcard下的txt文件
9301浏览 • 2回复 待解决
sign包和unsign包产物之间是否有差异
386浏览 • 1回复 待解决
colorspace会影响rgb的值,和其他平台的colorspace是否一样?参考文档:https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis-image-kit/js-apis-image.md#applycolorspace11