Beispiele von Matlab OpenCV-Konvertierungen
Von Zeit zu Zeit, die ich in den Hafen einige Matlab-Code zu OpenCV.
Fast immer gibt es einen Weg, es zu tun, und eine entsprechende Funktion in OpenCV. Ist trotzdem nicht immer leicht zu finden.
Daher möchte ich zu Beginn dieser Zusammenfassung zu finden und sammeln Sie einige Entsprechungen zwischen Matlab und OpenCV.
Ich benutze die Matlab-Funktion als überschrift und fügen Sie die Beschreibung von Matlab-Hilfe. Danach ein OpenCV Beispiel oder links zu Lösungen werden geschätzt.
- Hmm, es scheint, es ist eine Antwort, aber keine wirkliche Frage.
- Deshalb habe ich eine community-wiki heraus. Dachte, es wäre besser, platzieren Sie es hier als Frage - /wiki (Suchbar durch andere) als zu veröffentlichen es woanders.
- Fair genug - ich entfernte meine down-vote
Du musst angemeldet sein, um einen Kommentar abzugeben.
Repmat
Replizieren und Fliesen ein array. B = repmat(A,M,N) entsteht eine große matrix B, die aus einer M-von-N-Kachelung von Kopien A. Die Größe B ist [size(A,1)*M, size(A,2)*N]. Die Aussage repmat(A,N) erzeugt eine N-by-N-tiling.
B = wiederholen(A, M, N)
OpenCV Docs
Finden
Finden Indizes der nicht-null-Elemente. I = find(X) gibt die linearen Indizes der entsprechenden, von null verschiedenen Einträge des Arrays X. X kann ein logischer Ausdruck. Verwenden IND2SUB(SIZE(X),I) zu berechnen, mehrere Indizes aus der linearen Indizes I.
Ähnlich zu Matlab finden
Conv2
Zweidimensionalen Faltung. C = conv2(A, B) führt die 2-D-Faltung von Matrizen A und B, Wenn [ma,na] = size(A), [mb,nb] = size(B), und [mc,nc] = size(C), dann mc = max([ma+mb-1,ma -, mb]) und nc = max([na+nb-1,na,nb]).
Ähnlich Conv2
Imagesc
Skalierung der Daten und Darstellung als Bild. imagesc(...) ist die gleiche wie BILD (...), außer die Daten skaliert, um die volle Farbpalette.
SO Imagesc
Imfilter
N-D-Filterung von mehrdimensionalen Bildern. B = imfilter(A,H) der Filter multidimensional array A mit den mehrdimensionalen filter H. Eine kann logisch sein, oder es kann eine nonsparse numerisches array einer Klasse und dimension. Das Ergebnis, B, hat die gleiche Größe und Klasse A.
SO Imfilter
Imregionalmax
Regionalen maxima. BW = imregionalmax(I) berechnet die regionalen maxima von I. imregionalmax gibt ein binäres Bild, die BW, die gleiche Größe wie ich, identifiziert Sie die Standorte der regionalen maxima in I. In BW, Pixel auf 1 gesetzt, identifizieren regionale maxima; alle anderen Pixel werden auf 0 gesetzt.
SO Imregionalmax
Ordfilt2
2-D order-Statistik filtern. B=ordfilt2(A,UM,DOMAIN) ersetzt jedes element in A von der ORDNUNG-te element in die sortierte Menge der Nachbarn angegeben, die durch die nicht-null-Elemente in der DOMÄNE.
SO Ordfilt2
Roipoly
Wählen Sie das Polygon-region von Interesse. Verwenden roipoly wählen Sie eine polygonale region of interest in einem Bild. roipoly gibt ein binäres Bild, das Sie verwenden können, wie eine Maske für maskierten filtern.
SO Roipoly
Farbverlauf
Ungefähren Verlauf. [FX,FY] = gradient(F) gibt die numerische Steigung der matrix F. FX entspricht dF/dx, sind die Unterschiede in x-Richtung (horizontal). FY entspricht dF/dy, die Unterschiede in der y (vertikalen) Richtung. Der Abstand zwischen den Punkten in jeder Richtung angenommen werden. Wenn F ist ein Vektor, DF = gradient(F)ist das 1-D-Gradienten.
SO Farbverlauf
Sub2Ind
Linearen index aus mehreren Indizes. sub2ind wird verwendet, um zu bestimmen, die äquivalente single-index entsprechend einer gegebenen Menge von index-Werten.
SO sub2ind
backslash-operator oder mldivide
löst das system von linearen Gleichungen
A*x = B
. Die Matrizen A und B müssen die gleiche Anzahl von Zeilen.cv::lösen