首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >OpenCV.js GaussianBlur函数不工作吗?

OpenCV.js GaussianBlur函数不工作吗?
EN

Stack Overflow用户
提问于 2019-12-11 00:34:14
回答 1查看 1.3K关注 0票数 0

我正在尝试用GaussianBlur处理图像。

但我不能让它工作。上面写着:

代码语言:javascript
复制
Uncaught TypeError: fields[fieldName].write is not a function
    at Object.toWireType (opencv.js:30)
    at Object.GaussianBlur (eval at new_ (opencv.js:30), <anonymous>:9:26)
    at Object.proto.<computed> [as GaussianBlur] (opencv.js:30)
    at HTMLImageElement.img.onload (pen.js:110)

下面是代码:https://codepen.io/sundowatch/pen/jOEqrqY?editors=1010

我找不到这有什么问题。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-12-11 12:32:15

它对我来说很有效,下面是一个有效的例子:

代码语言:javascript
复制
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Hello OpenCV.js</title>
</head>
<body>
<h2>Hello OpenCV.js</h2>
<p id="status">OpenCV.js is loading...</p>
<div>
  <div class="inputoutput">
    <img id="imageSrc" alt="No Image" />
    <div class="caption">imageSrc <input type="file" id="fileInput" name="file" /></div>
  </div>
  <div class="inputoutput">
    <canvas id="canvasOutput" ></canvas>
    <div class="caption">canvasOutput</div>
  </div>
</div>
<script type="text/javascript">
let imgElement = document.getElementById('imageSrc');
let inputElement = document.getElementById('fileInput');
inputElement.addEventListener('change', (e) => {
  imgElement.src = URL.createObjectURL(e.target.files[0]);
}, false);
imgElement.onload = function() {
  let src = cv.imread(imgElement);
  let dst = new cv.Mat();
  let ksize = new cv.Size(5, 5);
  cv.GaussianBlur(src, dst, ksize, 0, 0, cv.BORDER_DEFAULT);
  cv.imshow('canvasOutput', dst);
  src.delete(); dst.delete();
};
function onOpenCvReady() {
  document.getElementById('status').innerHTML = 'OpenCV.js is ready.';
}
</script>
<script async src="https://docs.opencv.org/master/opencv.js" onload="onOpenCvReady();" type="text/javascript"></script>
</body>
</html>

你的问题在别处。在你的代码片段上的开发工具中,如果我尝试获取cv元素,我会得到一个错误。您是否可以仔细检查您是否正在加载opencv.js <script async src="https://docs.opencv.org/master/opencv.js" onload="onOpenCvReady();" type="text/javascript"></script>

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59271753

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档