什麼是存儲一些附加信息以及圖像像素的最佳方式?現在我正在考慮像vector<vector<vector<Info*>>>
這樣的兩個第一個索引指示相應的像素座標。有什麼更好的嗎?與cv :: Mat元素一起存儲更多信息
2
A
回答
1
大多數情況下沒有單一的「最佳」解決方案。
你的載體向量看起來有點複雜,但如果每個座標總是有很多相關的信息,那麼它可能很好。
如果只有一些像素有額外的信息,你都不可能使用更稀疏的數據結構
map<coordinates, info>
,並只存儲信息的幾個座標。
1
如果您的信息不是很複雜(可以用最多4通道矢量來描述),您可以將信息存儲在另一個cv :: Mat中,其大小與您的圖像大小相同。如果每個像素的信息是比較複雜的,你可以存儲一個指針在每個元素:
cv::Mat additionalInfo(image.size(), CV_32S); // CV_32S = int (usually the type used for pointers)
additionalInfo.at<CV_32S>(col,row) = new ComplexStruct; // Writing
ComplexStruct* info = additionalInfo.at<CV_32S>(col,row); // Reading
在嘗試這種方法,確保: 的sizeof(CV_32S)==的sizeof(ComplexStruct *)
相關問題
- 1. 訪問cv元素:: Mat
- 2. cv :: Mat每個元素的反轉
- 3. Opencv在cv中存儲Yuyv(YCrCb):: Mat
- 4. 是否可以將cv :: Point存儲到cv :: Mat?
- 5. cv :: Mat aaa()之間的區別和cv :: Mat aaa = cv :: Mat();
- 6. 合併多個cv :: Mat?
- 7. 使用FormsAuthentication.SetAuthCookie存儲更多信息
- 8. 存儲在OpenCV的Mat結構中的元素的類型
- 9. cv :: bitwise_not cv :: Mat矩陣
- 10. openCV cv :: mat release
- 11. 從cv :: Mat
- 12. UIImage cv :: Mat CV_8UC3
- 13. opencv cv :: mat allocation
- 14. estimatedRigidTransform():將生成的cv :: Mat轉換爲變換/旋轉信息
- 15. cv :: MAT操作像素只是不起作用
- 16. 我應該在哪裏存儲HTML元素的元信息?
- 17. 存儲信息()
- 18. 與Emgu CV一起使用Kinect ColorImageFrame CV
- 19. 如果a是一個cv :: Mat和cv :: Mat b = a.row(1),那麼這兩個cv :: Mat實例有什麼區別?
- 20. 存儲信息
- 21. OpenCV:分區cv :: Mat
- 22. cv :: Mat檢測PixelFormat
- 23. 打印cv :: Mat opencv
- 24. 獲取2-dim cv的非零元素的值:: Mat
- 25. 在cv :: Mat中使用C++ api訪問元素(x,y)
- 26. 在std :: vector中存儲Cv :: Mat的數據
- 27. 如何動態存儲有關HTML元素的信息?
- 28. 存儲元素與TableLayout
- 29. cv :: Mat與UIImageView寬度不符?
- 30. SuperImpose一個cv :: mat圖像另一個