想通過不斷的截取圖片,然后根據圖片中的文字或者色塊,找到該文字的坐標,有什么好的實作方式嗎?
或者有更好的實作方法,找出指定位置的坐標!!
uj5u.com熱心網友回復:
問題沒描述清楚啊,是在一個大圖片上找另外一個文字圖片的位置?那兩個文字是一樣還是相似?
uj5u.com熱心網友回復:
遍歷圖片的每個像素點,獲取當前像素的顏色
uj5u.com熱心網友回復:
參考 2 樓 asq985 的回復: 遍歷圖片的每個像素點,獲取當前像素的顏色
有示例嗎,參考一下
uj5u.com熱心網友回復:
參考 1 樓 hztltgg 的回復: 問題沒描述清楚啊,是在一個大圖片上找另外一個文字圖片的位置?那兩個文字是一樣還是相似?
就是在系統桌面上找指定文字的坐標,例如:提交,確定,取消
uj5u.com熱心網友回復:
int height = bmp.Height;
int width = bmp.Width;
Bitmap newBitMap = new Bitmap(width, height);
Color pixel;
for (int x = 0; x < width; x++)
{
for (int y = 0; y < height; y++)
{
pixel = bmp.GetPixel(x, y);
int r, g, b, result;
result = 0;
r = pixel.R;
g = pixel.G;
b = pixel.B;
另,你如果想去模擬點擊別人的按扭,可以用勾子,或自己搜windows句柄
uj5u.com熱心網友回復:
驗證碼把,你需要的是YoLo3 / SSD
uj5u.com熱心網友回復:
參考 6 樓 橘子皮zzz 的回復: 驗證碼把,你需要的是YoLo3 / SSD
不是驗證碼,能詳細說下嗎
uj5u.com熱心網友回復:
參考 5 樓 asq985 的回復: int height = bmp.Height;
int width = bmp.Width;
Bitmap newBitMap = new Bitmap(width, height);
Color pixel;
for (int x = 0; x < width; x++)
{
for (int y = 0; y < height; y++)
{
pixel = bmp.GetPixel(x, y);
int r, g, b, result;
result = 0;
r = pixel.R;
g = pixel.G;
b = pixel.B;
另,你如果想去模擬點擊別人的按扭,可以用勾子,或自己搜windows句柄
這個應該不行吧,因為有多個按鈕,但背景色都是一樣的,只是上面的文字不一樣
uj5u.com熱心網友回復:
用視覺庫,比如OpenCV,visionPro,halcon等,用其定位工具。
uj5u.com熱心網友回復:
參考 9 樓 良朋 的回復: 用視覺庫,比如OpenCV,visionPro,halcon等,用其定位工具。 老哥,能給個例子參考下嗎
uj5u.com熱心網友回復:
不斷的截取圖片是什么意思?這個按鈕還會動?
uj5u.com熱心網友回復:
有個老庫,AForge.Net http://www.aforgenet.com 可以直接NuGet添加參考
幾行代碼就行,一個原圖,一個按鈕小圖,回傳的就有坐標
AForge.Imaging.ExhaustiveTemplateMatching 類
// create template matching algorithm's instance
// use zero similarity to make sure algorithm will provide anything
ExhaustiveTemplateMatching tm = new ExhaustiveTemplateMatching( 0 );
// compare two images
TemplateMatch[] matchings = tm.ProcessImage( image1, image2 );
// check similarity level
if ( matchings[0].Similarity > 0.95f )
{
// do something with quite similar images
}
uj5u.com熱心網友回復:
參考 12 樓 hztltgg 的回復: 有個老庫,AForge.Net http://www.aforgenet.com 可以直接NuGet添加參考
幾行代碼就行,一個原圖,一個按鈕小圖,回傳的就有坐標
AForge.Imaging.ExhaustiveTemplateMatching 類
// create template matching algorithm's instance
// use zero similarity to make sure algorithm will provide anything
ExhaustiveTemplateMatching tm = new ExhaustiveTemplateMatching( 0 );
// compare two images
TemplateMatch[] matchings = tm.ProcessImage( image1, image2 );
// check similarity level
if ( matchings[0].Similarity > 0.95f )
{
// do something with quite similar images
}
剛搞了下,什么情況,很小的圖,卡死半天,速度非常非常慢啊
uj5u.com熱心網友回復:
參考 11 樓 hztltgg 的回復: 不斷的截取圖片是什么意思?這個按鈕還會動?
按鈕的位置不固定的,苦在這里
uj5u.com熱心網友回復:
參考 5 樓 asq985 的回復: int height = bmp.Height;
int width = bmp.Width;
Bitmap newBitMap = new Bitmap(width, height);
Color pixel;
for (int x = 0; x < width; x++)
{
for (int y = 0; y < height; y++)
{
pixel = bmp.GetPixel(x, y);
int r, g, b, result;
result = 0;
r = pixel.R;
g = pixel.G;
b = pixel.B;
另,你如果想去模擬點擊別人的按扭,可以用勾子,或自己搜windows句柄
GetPixel性能極差,這個一定要用unsafe代碼,lockbit什么的,性能提高上百倍
uj5u.com熱心網友回復:
參考 13 樓 橘子皮zzz 的回復: Quote: 參考 12 樓 hztltgg 的回復:
有個老庫,AForge.Net http://www.aforgenet.com 可以直接NuGet添加參考
幾行代碼就行,一個原圖,一個按鈕小圖,回傳的就有坐標
AForge.Imaging.ExhaustiveTemplateMatching 類
// create template matching algorithm's instance
// use zero similarity to make sure algorithm will provide anything
ExhaustiveTemplateMatching tm = new ExhaustiveTemplateMatching( 0 );
// compare two images
TemplateMatch[] matchings = tm.ProcessImage( image1, image2 );
// check similarity level
if ( matchings[0].Similarity > 0.95f )
{
// do something with quite similar images
}
剛搞了下,什么情況,很小的圖,卡死半天,速度非常非常慢啊
是按鈕圖很小嗎?那匹配是可能慢,兩個圖灰度話以后應該會快些。
uj5u.com熱心網友回復:
參考 14 樓 viva369 的回復: Quote: 參考 11 樓 hztltgg 的回復:
不斷的截取圖片是什么意思?這個按鈕還會動?
按鈕的位置不固定的,苦在這里
位置不固定知道呀,是按鈕有影片效果不停的動?不然不固定并沒有什么問題呀。
uj5u.com熱心網友回復:
先轉成灰度圖,然后用OpenCV的模板匹配函式應該可以實作,1秒鐘匹配幾次應該沒問題。網上搜一下例子,很多。
uj5u.com熱心網友回復:
參考 17 樓 hztltgg 的回復: Quote: 參考 14 樓 viva369 的回復:
Quote: 參考 11 樓 hztltgg 的回復:
不斷的截取圖片是什么意思?這個按鈕還會動?
按鈕的位置不固定的,苦在這里
位置不固定知道呀,是按鈕有影片效果不停的動?不然不固定并沒有什么問題呀。
影片效果倒是沒有,只是位置不固定
uj5u.com熱心網友回復:
你去下載大漠插件,里面就有你需要的內容。
uj5u.com熱心網友回復:
厲害啊厲害啊……
uj5u.com熱心網友回復:
二值化,遍歷像素點
uj5u.com熱心網友回復:
1.先確定你的文字是不是 標準間距,
2.分析子塊的 高,寬像素,然后切割
3.建立樣本庫。
4.可進行識別和定位了就。
當然可以 二值化,中值濾波。
uj5u.com熱心網友回復:
不斷的截圖是不停的在截圖嗎?
uj5u.com熱心網友回復:
要參考一下下啊
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/114903.html
標籤:C#
上一篇:誰能做一款手機淘寶陌生人群發訊息的軟體
下一篇:點陣