自動試玩 識別虛線框

2021-10-23 03:26:57 字數 2877 閱讀 4943

qq 282397369

老革命碰到新問題,使用者發現在試玩的時候,有乙個平台需要按住虛框進行操作,目前的指令碼還沒有這個功能,需要實現一下下。

不怕客戶沒愛好,就怕客戶沒需求。

首先是顏色過濾,然後找連通域,再拼成矩形框資料。當然,矩形框資料只需找上下左右4個座標分量,這個可以通過投影找最大兩個數值來確定。

核心實現,肯定還得c來

考慮實用性,把二值化這個步驟用字串來引數化,這樣就可以實現彩色、灰度、通道方式過濾。

先設計乙個函式:

trect __fastcall cvhelper::

getrect_dash

(cv::mat& srcmat, unicodestring binarymethod)

else

binarymat = cvhelper::

buildtransmaskmat_colorpass

(srcmat, v1);}

else

if(thelper::string::

issame

(l"gray"

, type,

!drgraph_flag_sensitive)

)else

binarymat = cvhelper::

buildtransmaskmat_gray

(srcmat,

byte

(v1));

}else

if(thelper::string::

issame

(l"channel"

, type,

!drgraph_flag_sensitive))if

(binarymat.

empty()

)return result;

cvhelper::debug::

logmat

(srcmat, l"虛線框識別 - 原圖");

cvhelper::debug::

logmat

(binarymat, l"虛線框識別 - 二值圖");

cvrects rects = cvhelper::

getalldomain

(binarymat, nssx, l""

, cv_retr_list)

; cvhelper::debug::

logmatwithrects

(srcmat, rects)

;int

* rowvalue =

newint

[srcmat.rows]

;int

* colvalue =

newint

[srcmat.cols]

;zeromemory

(rowvalue, srcmat.rows *

sizeof

(int))

;zeromemory

(colvalue, srcmat.cols *

sizeof

(int))

;for

(int i = rects.

size()

-1; i >=0;

--i)

}int left =

localgetmaxindex

(colvalue, srcmat.cols)

;int right =-1

;if(left >=0)

int top =

getmaxindex

(rowvalue, srcmat.rows)

;int bottom =-1

;if(top >=0)

delete rowvalue;

delete colvalue;

if(left <

0|| right <

0|| top <

0|| bottom <0)

return result;

result.left = std::

min(left, right)

; result.top = std::

min(top, bottom)

; result.right = std::

max(left, right)

; result.bottom = std::

max(top, bottom)

; cvhelper::debug::

logmatwithrects

(srcmat, rects)

;return result;

}

經測試,可以正確識別出虛線框

增加乙個api函式getrect_dash供lua呼叫,返回矩形區域即可。

local t, x, y, w, h = cv:

getrect_dash

(realtimemat,

"channel, blue, 80")if

(x >

0) then

click

(string.

format

("%d, %d"

, x + w /

2, y + h /2)

) end

結果:

如此甚好。

去除鏈結虛線框

b 區域性控制 b link1 link1 link1 link1 b 全域性控制 b css實現 a 只支援ie,過多使用效率低 a 只支援ie,過多使用效率低 a focus ie不支援 htc實現 ie支援,頁面載完才有效果 把下面這段 存為.htc為副檔名的檔案 呼叫 a js遍歷實現 wi...

去除鏈結虛線框

區域性控制 link1 link1 link1 link1 全域性控制 css實現 a 只支援ie,過多使用效率低 a 只支援ie,過多使用效率低 cqc新加 hidefocus true只是隱藏了焦點 隱藏了虛線 但是焦點還是在該鏈結上 獲得焦點後產生的一些效果如a active的樣式還是能起作用...

批量消除虛線框

出處 5d多 各位想必都知道,onfocus this.blur 這條 能消除鏈結時的虛線框,但你有沒有想過,如果你的網頁上有幾個甚至上百個鏈結,而你又想要去掉上面那些討厭的虛線框,難道你還乙個個去 ctrl c ctrl v 天哪!這對乙個正常人來說絕對是個惡夢。也許你會說,用 dw或其它文字編輯...