speed20: 搜线反光优化(高斯模糊+形态学核5x5)
This commit is contained in:
+4
-7
@@ -76,12 +76,6 @@ cv::Mat image_binerize(cv::Mat &frame)
|
||||
|
||||
cv::bitwise_or(output, binarizedFrame, output);
|
||||
|
||||
// V 通道反光剔除: 高亮度(V>180) 且 低饱和度(S<40) → 白反光,标记为非赛道
|
||||
cv::Mat hi_v, lo_s;
|
||||
cv::threshold(hsvChannels[2], hi_v, 180, 255, cv::THRESH_BINARY);
|
||||
cv::threshold(hsvChannels[1], lo_s, 40, 255, cv::THRESH_BINARY_INV);
|
||||
output.setTo(0, hi_v & lo_s);
|
||||
|
||||
return output;
|
||||
}
|
||||
|
||||
@@ -110,7 +104,7 @@ cv::Mat image_binerize(cv::Mat &frame)
|
||||
// ============================================================
|
||||
cv::Mat find_road(cv::Mat &frame)
|
||||
{
|
||||
static cv::Mat kernel = cv::getStructuringElement(cv::MORPH_CROSS, cv::Size(3, 3));
|
||||
static cv::Mat kernel = cv::getStructuringElement(cv::MORPH_CROSS, cv::Size(5, 5));
|
||||
cv::morphologyEx(binarizedFrame, morphologyExFrame, cv::MORPH_OPEN, kernel);
|
||||
|
||||
static cv::Mat mask;
|
||||
@@ -179,6 +173,9 @@ void image_main()
|
||||
cv::merge(labCh, labFrame);
|
||||
cv::cvtColor(labFrame, resizedFrame, cv::COLOR_Lab2BGR);
|
||||
|
||||
// ── 1.6 高斯模糊 → 融合反光噪点 ────────────────────
|
||||
cv::GaussianBlur(resizedFrame, resizedFrame, cv::Size(3, 3), 0);
|
||||
|
||||
// ── 2. HSV 双通道 Otsu 二值化 ─────────────────────
|
||||
// 赛道区域 = 白色(255),背景/边界 = 黑色(0)
|
||||
binarizedFrame = image_binerize(resizedFrame);
|
||||
|
||||
Reference in New Issue
Block a user