基于javascript的opencv不适用于动态图像

javascript based opencv not working with dynamic image

本文关键字:适用于 动态 图像 不适用 opencv javascript 基于      更新时间:2023-09-26

我使用的是基于javascript的opencv(请参阅:https://github.com/mtschirs/js-objectdetect)它与使用canvas和html5的实时视频完美配合。

当我尝试使用动态保存的图像进行检测时,它会失败,但如果我对图像进行硬编码,它会起作用。

以下(静态图像):

<img id="image" src="download.png"></img>

工作正常,但使用

var dataURL = $("#canvas")[0].toDataURL("image/png");
$("#image").attr('src', dataURL);

或者使用ajax调用将图像保存到服务器上并返回url路径

$.ajax({
    type: "POST",
    url: "saveImage.php",
    data: { 
        img: dataURL
    }
}).done(function(o) {
    $("#image").attr('src', o);
});

两者都失败了。它们都显示了适当的图像。

检测功能是

    $("#image").objectdetect(..., function(faces) { ... }

执行,但返回数组长度0,除非我使用静态图像

让我的一位同事解决了这个问题。计算图像时未加载图像。

jQuery.ajaxSetup({
  async : false 
});

我最初尝试过$(element).load(function(){..})似乎不起作用,但这似乎是ajax的时间问题。