Не уверен, что это уместно, но я использую opencv4nodejs
для своего проекта, и я действительно работал в такой ситуации, когда, если я не вызываю .release()
для каждого объекта Mat, потребление памяти возрастает ~10 МБ / с.
Этот простой пример кода решит проблему.
function loop(camera, display)
{
let mat = camera.read();
let grey_mat = mat.bgrToGray();
loop(camera, display);
}
Где как, этот исправляет проблему:
function loop(camera, display)
{
let mat = camera.read();
let grey_mat = mat.bgrToGray();
grey_mat.release();
mat.release();
loop(camera, display);
}
Если я ищупочему объект OpenCV Mat вызывает утечки Я получаю ответы, где люди говорят, что Mat способен самостоятельно позаботиться об использовании памяти.
Если последнее утверждение верно, что я делаю неправильно?И если я не делаю ничего плохого, почему я должен явно сказать объекту Mat, чтобы освободить его память?Или есть потенциальная проблема с самим модулем npm opencv4nodejs
?