我嘗試在以下文章中實現想法:BiCoS: A Bi-level Co-Segmentation Method for Image Classification但我對以下要求感到困惑:此處的GrabCut是用矩形初始化的在中心(圖像大小的50%,除非另有說明)分配給前景,其餘分配給背景。我不知道如何在中心繪製一個矩形,佔據圖像大小的50%。請幫幫我。我使用OpenCV庫在C++中編寫代碼。使用Grabcut初始化等於圖像大小的50%的矩形
0
A
回答
0
該文件應該更清楚。從上下文來看,它可能指的是一個定義包含分段對象的感興趣區域(ROI)的矩形。 ROI外部的像素被標記爲「明顯的背景」。正如你可能知道GrabCut要求你指定圖像的區域,指定明顯的背景像素,可能的前景像素,明顯的前景像素,可能的前景像素。所有這些數據將作爲參數提供給OpenCV中的grubCut function。另外,here's the documentation for cv::Rect
。
我不知道作者如何選擇矩形的大小。具有50%圖像大小的矩形大小是什麼意思?這可能是矩形的尺寸等於圖像尺寸的1/2。您可以通過電子郵件發送論文的作者並要求澄清。
1
那麼,它們被假定感興趣的數字是由像一個矩形限定:
Rect(Point(image.width/4, image.height/4), Point(image.width*3/4, image.height*3/4);
或具有圖像(1 /根-2大小)的一半的面積矩形;再次以圖像中心點爲中心。
然後可以在該矩形內調用grabcut算法。
如果圖形在某種程度上接近邊界,那麼他們手動選擇矩形(監督啓動)。由於目的是通過抓取結果來訓練SVM,所以自動化不是必須的。
0
要選擇您可以使用Roi。但是,如果你想繪製框或矩形,那麼你可以使用矩形或線功能。 這裏是繪製矩形框50%大小的圖像的簡單代碼。
int main(int argc, char *argv[])
{
Mat src = imread("Desert.jpg");
Mat src_original = src.clone();
cv::Size sz = src.size();
int block_size = 16;
int x_cord_roi = sz.width/4;
int y_cord_roi = sz.height/4;
int width_roi = sz.width/2;
int height_roi = sz.height/2;
imshow("My_Win_Ori", src_original);
Mat roi(src, Rect(x_cord_roi, y_cord_roi, width_roi, height_roi));
// rectangle(src, Point(x_cord_roi, y_cord_roi), Point(x_cord_roi + width_roi, y_cord_roi + height_roi),
// Scalar(255), -1,8);
int thickness = 2;
int lineType = 8;
line(src, Point(x_cord_roi, y_cord_roi), Point(x_cord_roi + width_roi, y_cord_roi), Scalar(0, 0, 0), thickness, lineType);
line(src, Point(x_cord_roi, y_cord_roi), Point(x_cord_roi, y_cord_roi + height_roi), Scalar(0, 0, 0), thickness, lineType);
line(src, Point(x_cord_roi + width_roi, y_cord_roi), Point(x_cord_roi +width_roi , y_cord_roi + height_roi), Scalar(0, 0, 0), thickness, lineType);
line(src, Point(x_cord_roi, y_cord_roi + height_roi), Point(x_cord_roi + width_roi, y_cord_roi + height_roi), Scalar(0, 0, 0), thickness, lineType);
imshow("My_Win", src);
waitKey(0);
getchar();
return 0;
}
相關問題
- 1. 使矩形等於圖像視圖
- 2. UIscrollview初始圖像大小
- 3. 初始化大小
- 4. 使用將通過編程創建的矩形圖像初始化UIImageView對象
- 5. 用值'0'初始化大小'X'的矩陣'X'
- 6. 如何使用snap svg初始化圖像矩陣?
- 7. 初始化STL`map`大小
- 8. 初始化圖像
- 9. 初始屏幕圖像大小
- 10. 將圖像調整爲初始大小
- 11. 大括號或相等的初始化
- 12. 將圖像重新縮放爲HTML中原始大小的50%
- 13. 與最初圖像大小相同的整形圖像
- 14. 初始化和圖形
- 15. 用於初始化散列的最小值和最大值
- 16. 使用If語句初始化圖像
- 17. 矩陣初始化
- 18. 初始化矩陣
- 19. 用於UI圖形元素的自調用初始化器
- 20. 初始化後獲得UIElement的大小
- 21. 初始化散列表的大小
- 22. 初始化未知大小的數組
- 23. 初始化具有可變大小的
- 24. 未初始化列表的大小C#
- 25. 形式初始化使用硒的webdriver
- 26. 圖像處理:如何處理圖像以用於初始化
- 27. 從中心開始用較小的矩形填充大矩形的算法
- 28. 使用STL容器,檸檬圖形庫初始化圖形
- 29. 初始化攝像頭視圖矩陣的不同方法
- 30. 使用大小的未初始化值的8