我想只使用tensorfow.js或opencv.js在图像中进行文本检测,我已经在keras上构建了一个EAST模型,并转换为tensorflowjs模型
有人能帮我吗?任何资源都可以。
谢谢。
发布于 2021-10-12 11:59:01
因此,最初您需要下载East冻结模型,然后使用以下命令将其转换为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();因为east模型给出了两个输出,即分数和几何。所以在这里,data1将给出几何体(我忽略了它,因为我的最终目标是检测文本是否存在,而不是本地化它),data2将给出分数。
接下来,我将阈值设置为0.5,以区分文本是否存在。如果概率大于0.5,则文本存在,如果小于0.5,则文本上不存在文本。
注意:现在,我跳过了预处理步骤(除了调整大小),他们从输入图像的RGB值中减去平均RGB值。
https://stackoverflow.com/questions/69052249
复制相似问题