node.js - OpenCV - 将图像保存在 DB Nodejs 中

标签 node.js database image opencv similarity

如果有人能帮助我解决这个问题,我将不胜感激: 我正在将 opencv 与 nodejs 结合使用 ( https://github.com/TanaseButcaru/node-opencv )

我有一组照片,我喜欢使用 opencv readImage 函数读取这些照片,然后将其保存在数据库中。

photos.map(async(photo) => {
    cv.readImage(`${__dirname}/${photo}`, function (error, matrix) { //insert in DB}

你知道如何将这个“矩阵”保存在数据库中,然后使用它来检索图像并进行比较(ImageSimilarity)吗?

最佳答案

我不确定这些选项中的哪些是在node-opencv中实现的,但是:

  1. 您可以获取矩阵的未压缩的原始二进制数据,并将其存储为 JSON 格式的数组(假设您使用可以存储或序列化 JSON 格式数据的数据库,例如 mongodb)

  2. 使用OpenCV的imcodec模块将图像编码为base64格式,基本上可以存储为字符串。但是,根据编解码器的不同,您可能会损失图像质量,因此我推荐 png。

您还可以查看:https://github.com/justadudewhohacks/opencv4nodejs ,它实现了这两个选项。或者至少如何将 Mat 序列化为 JSON 数组或 Node 缓冲区的示例可能会帮助您解决问题。

关于node.js - OpenCV - 将图像保存在 DB Nodejs 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46528977/

相关文章:

jquery - 悬停没有出现在准确的位置

node.js - 为什么 Node JS 有 4 个版本?

Javascript,运行函数 0.5 秒然后停止(循环)

node.js - 使用 node.js http2 模块的服务器发送事件 - 我应该如何将它与流/pushStream 一起使用?

Python/MySQL : Select data in a for loop

java.sql.Date错误如何避免?将日期插入我的数据库

sql - 根据条件选择多个Hibernate import.sql

css - 如何引用另一个文件夹中的图像?

image - 可以从非 Apple 平台生成用于 iOS 显示的最佳 PNG 内部格式是什么?

javascript - 使用 Node JS 在屏幕上绘图