HarmonyOS 相机双路预览获取图片转换后进行文字识别问题

通过receiver.on("imageArrival", ()),在回调中调用readNextImage方法后,

console.error(`testTag buffer length is ${imgComponent.byteBuffer.byteLength} ${imgComponent.componentType}  ${imgComponent.rowStride}`)

可以获取到图片的信息,请问如何将该ArrayBuffer转换成一个可以进行文字识别的PixelMap对象呢?

HarmonyOS
2024-08-12 15:07:44
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
superinsect

请参考如下代码:

if (imgComponent.byteBuffer as ArrayBuffer) { 
  //SourceOptions自定义属性,sourceDensity:ImageSource的密度,  sourcePixelFormat:图片像素格式,sourceSize:图像像素大小 
  let sourceOptions : image.SourceOptions = { sourceDensity: 120, sourcePixelFormat: 8} 
  // 转换arrayBuffer 
  let imageResource=image.createImageSource(imgComponent.byteBuffer,sourceOptions) 
  let decodingOptions: image.DecodingOptions = { editable: true, desiredPixelFormat: 3, } 
  //注意创建imageSource的SourceOptions 
  let pixma=await imageResource.createPixelMap(decodingOptions) 
}

注意创建imageSource的SourceOptions要预览流的profile的大小一致。

分享
微博
QQ
微信
回复
2024-08-12 19:20:13
相关问题
如何实现预览+录制功能
1068浏览 • 1回复 待解决
如何使用预览接口进行文预览
478浏览 • 1回复 待解决
有没有实时相机预览结合OCR识别的demo
1723浏览 • 1回复 待解决
HarmonyOS 图片+文字排列问题
49浏览 • 1回复 待解决
如何连续获取相机预览流数据
702浏览 • 1回复 待解决
WebView支持4G & WIFI能力吗?
758浏览 • 1回复 待解决
通过web上传图片进行预览
976浏览 • 1回复 待解决
行文字后面添加标签
270浏览 • 1回复 待解决