使用 tensorflowjs 进行文本检测
Text Detection using tensorflowjs
我只想使用 tensorfow.js 或 opencv.js 在图像中进行文本检测,我已经在 keras 上构建了一个 EAST 模型并转换为 tensorflowjs 模型
谁能帮我解决这个问题,任何资源都会很棒
谢谢。
因此,首先您需要下载 East frozen 模型,然后使用以下命令将其转换为 tensorflow.js 模型
tensorflowjs_converter --input_format=tf_frozen_model --output_node_names='feature_fusion/Conv_7/Sigmoid,feature_fusion/concat_3' /path_to_model /path_to_where_you_want_save_converted_model.
接下来在获取输入图像并加载模型后,下面的代码将检测文本是否存在
$("#predict-button").click(async function () {
let image = $("#selected-image").get(0);
let tensor = tf.browser.fromPixels(image)
.resizeNearestNeighbor([640, 320])
.expandDims(0);
tensor = tf.cast(tensor, 'float32')
const [output1, output2] = await model.predict(tensor);
const data1 = await output1.data();
const data2 = await output2.data();
因为东模型给出了两个输出,即分数和几何。所以这里 data1 将给出几何图形(我忽略了它,因为我的最终目标是检测文本是否存在而不是对其进行本地化),data2 将给出分数。
接下来,我设置了 0.5 的阈值来区分文本是否存在。如果概率大于 0.5,则文本存在,如果概率小于 0.5,则文本不存在。
注意:目前,我已经跳过了预处理步骤(调整大小除外),他们从输入图像的 RGB 值中减去平均 RGB 值。
我只想使用 tensorfow.js 或 opencv.js 在图像中进行文本检测,我已经在 keras 上构建了一个 EAST 模型并转换为 tensorflowjs 模型
谁能帮我解决这个问题,任何资源都会很棒
谢谢。
因此,首先您需要下载 East frozen 模型,然后使用以下命令将其转换为 tensorflow.js 模型
tensorflowjs_converter --input_format=tf_frozen_model --output_node_names='feature_fusion/Conv_7/Sigmoid,feature_fusion/concat_3' /path_to_model /path_to_where_you_want_save_converted_model.
接下来在获取输入图像并加载模型后,下面的代码将检测文本是否存在
$("#predict-button").click(async function () {
let image = $("#selected-image").get(0);
let tensor = tf.browser.fromPixels(image)
.resizeNearestNeighbor([640, 320])
.expandDims(0);
tensor = tf.cast(tensor, 'float32')
const [output1, output2] = await model.predict(tensor);
const data1 = await output1.data();
const data2 = await output2.data();
因为东模型给出了两个输出,即分数和几何。所以这里 data1 将给出几何图形(我忽略了它,因为我的最终目标是检测文本是否存在而不是对其进行本地化),data2 将给出分数。
接下来,我设置了 0.5 的阈值来区分文本是否存在。如果概率大于 0.5,则文本存在,如果概率小于 0.5,则文本不存在。
注意:目前,我已经跳过了预处理步骤(调整大小除外),他们从输入图像的 RGB 值中减去平均 RGB 值。