Tôi đang sử dụng chức năng cvFindContour của opencv và trong đó có một tham số RETR_TYPE có nghĩa là loại retrivel, do đó tôi không nhận được sự khác biệt giữa CV_RETR_LIST
, CV_RETR_TREE
, CV_RETR_EXTERNAL
là gì?sự khác biệt giữa CV_RETR_LIST, CV_RETR_TREE, CV_RETR_EXTERNAL?
12
A
Trả lời
16
Nhìn vào the documentation for findContours
.
Sự khác biệt chính là trong số hierarchy
được trả về (cung cấp mối quan hệ giữa một đường viền và đường viền tiếp theo).
CV_RETR_EXTERNAL
cung cấp đường viền "bên ngoài", vì vậy nếu bạn có (nói) một đường viền bao quanh một đường bao khác (như vòng tròn đồng tâm), thì chỉ được đưa ra ngoài cùng.CV_RETR_LIST
cung cấp tất cả các đường nét và thậm chí không bận tâm tính toánhierarchy
- tốt nếu bạn chỉ muốn các đường nét và không quan tâm liệu lồng nhau có được lồng vào nhau hay không.CV_RETR_CCOMP
cung cấp đường nét và sắp xếp chúng thành các đường viền bên trong và bên trong. Mỗi đường bao là đường viền của đối tượng hoặc đường viền của đối tượng bên trong đối tượng khác (ví dụ: lỗ).hierarchy
được điều chỉnh cho phù hợp. Điều này có thể hữu ích nếu (nói) bạn muốn tìm tất cả các lỗ hổng.CV_RETR_TREE
tính toán phân cấp đầy đủ của các đường bao. Vì vậy, bạn có thể nói rằng object1 được lồng nhau 4 cấp độ sâu bên trong object2 và object3 cũng lồng nhau 4 cấp độ sâu.
0
Từ imgproc.cpp
:
//! mode of the contour retrieval algorithm
enum RetrievalModes {
/** retrieves only the extreme outer contours. It sets `hierarchy[i][2]=hierarchy[i][3]=-1` for
all the contours. */
RETR_EXTERNAL = 0,
/** retrieves all of the contours without establishing any hierarchical relationships. */
RETR_LIST = 1,
/** retrieves all of the contours and organizes them into a two-level hierarchy. At the top
level, there are external boundaries of the components. At the second level, there are
boundaries of the holes. If there is another contour inside a hole of a connected component, it
is still put at the top level. */
RETR_CCOMP = 2,
/** retrieves all of the contours and reconstructs a full hierarchy of nested contours.*/
RETR_TREE = 3,
RETR_FLOODFILL = 4 //!<
};
OpenCV 2.4.13
Các vấn đề liên quan
- 1. Sự khác biệt giữa $ (...) và `...`
- 2. Sự khác biệt giữa. và #
- 3. Sự khác biệt giữa $ * và $ @
- 4. Sự khác biệt giữa ". +" Và ". +?"
- 5. Sự khác biệt giữa "**/* /" và "** /"?
- 6. Sự khác biệt giữa = và: =
- 7. Sự khác biệt về sự khác biệt giữa Matplotlib giữa Agg và Cairo
- 8. Sự khác biệt giữa Html.RenderAction và Html.Action
- 9. Sự khác biệt giữa cookie và phiên?
- 10. Sự khác biệt giữa '.' và "." trong java
- 11. Sự khác biệt giữa SimpleDB và S3
- 12. C++ - Sự khác biệt giữa (*). và ->?
- 13. Sự khác biệt giữa offsetHeight và clientHeight
- 14. Sự khác biệt giữa cuda.h, cuda_runtime.h, cuda_runtime_api.h
- 15. Sự khác biệt giữa RDLC và SSRS
- 16. Sự khác biệt giữa "\ n" và Environment.NewLine
- 17. Sự khác biệt giữa qt và PyQt4
- 18. Sự khác biệt giữa AForge và OpenCV
- 19. Sự khác biệt giữa toFixed() và toPrecision()?
- 20. sự khác biệt giữa cacao và cocoatouch
- 21. Sự khác biệt giữa smtpClient.send() và smtpClient.SendAsync()?
- 22. Sự khác biệt giữa window.location.host và window.location.hostname
- 23. Sự khác biệt giữa DTLS và TLS
- 24. Sự khác biệt giữa Mealy và Moore
- 25. sự khác biệt giữa createRfcommSocketToServiceRecord và createRfcommSocket
- 26. Sự khác biệt giữa Arrays.sort() và Arrays.parallelSort()
- 27. sự khác biệt giữa orm và pdo
- 28. Sự khác biệt giữa nproc và ulimit?
- 29. Sự khác biệt giữa apc_add và apc_store?
- 30. Sự khác biệt giữa mb_substr và substr
Dưới đây là một liên kết đến các cuốn sách [OpenCV] (http://books.google.co.jp/books? id = seAgiOfu2EIC & pg = PA236 & LPG = PA236 & dq = CV_RETR_LIST, CV_RETR_TREE, CV_RETR_EXTERNAL & source = bl & OTS = hSF68jiEN9 & sig = EukC6H9XafAm89zOkkw7UiFWvAc & hl = vi & sa = X & ei = pnQOT87GH-mimQWjn8TDAw & redir_esc = y # v = onepage & q = CV_RETR_LIST% 2CCV_RETR_TREE% 2CCV_RETR_EXTERNAL & f = false) mà giải thích sự khác biệt (pg 236- 237) –
Bạn có thể tìm thêm chi tiết về bài viết này: http://opencvpython.blogspot.com/2013/01/contours-5-hierarchy.html –