0
Ich habe eine Reihe von Rahmen aus FFMpegGrabber, und ich versuche, eine Methode zu schreiben, die wie folgt aussieht:Wie wird eine Liste <Mat> in javacv gemittelt, ohne einen Überlauf zu verursachen?
private static Mat getAverage(List<Mat> mats) {
if (mats.size() == 0) {
throw new RuntimeException("no mats");
}
Mat first = mats.get(0);
Size s = first.size();
Mat total = new Mat(s);
MatExpr expr = new MatExpr(total);
for (Mat m : mats) {
expr = opencv_core.add(m, expr);
}
return opencv_core.multiply(expr, 1/mats.size()).asMat()
}
Aber das scheint, wie es da überfüllt ist die Ausgangsmatrix wie ein Durchschnitt sieht gar nicht. Ich habe mich gefragt, ob jemand einen besseren Weg kennt, dies zu tun.