Jump to content

Advanced Pixel Search Library


FastFrench
 Share

What do you think of this library ?  

35 members have voted

  1. 1. What do you think about FastFind ?

    • It's really great, I can't imagine doing a script without it
    • It's of some use for me in my current scripts
    • I could use it some day
    • Looks nice, but of no use for me
    • I've tried it, but it doesnt fit my needs
    • Sounds good on the paper, but can't make it work (bug or too difficult to use it)
  2. 2. Have you tried it ?

    • Yes, I'm using it right now
    • Somewhat, I've done some testing, will surely use it later
    • I've downloaded it and just played a little with packaged demo scripts
    • I've downloaded it, but not tried it so far
    • Not downloaded it so far, but I probably will some day
    • It's of no interested for me.
  3. 3. What is missing or should be improved ?

    • It has all the features I may need about Pixels Handling
    • OK it's pretty fast, but couldn't it be faster ?
    • Too hard to use it, could you simplify usage ?
    • Some additional features would be nice to have (please explain in a message)
    • It really lacks some decent documentation (I still hope to find someone to help on that)
    • Some critical features are missing, can't use it (please explain in a message)
    • I found some minor bugs (please explain in a message)
    • I've found some serious bugs (please explain in a message)
    • I've never tried it so far, can't tell
    • It would be nice if you could provide easy access to the associated tool - FFShowPixel
    • I would like to use it other languages. Could you provide wrappers ? (please explain in a message)


Recommended Posts

Maybe I'd put the sources on a public vault. Someone would be interested in maintaining this ? (C++ code inside)

I'm not qualified to maintain such a code library but I'd sure like to see it.

AutoIt Absolute Beginners    Require a serial    Pause Script    Video Tutorials by Morthawt   ipify 

Monkey's are, like, natures humans.

Link to comment
Share on other sites

@FastFrench WoW! I am very impressed by your .dll after spending few hours reading all the posts here your dll is exactly what I am looking for. Thank You Very Much! Great Work!

@frank10 As I have mentioned above after few hours of reading and seeing the YouTube link to that security motion detection, it reminds few months ago I Google something similar to your question and this person was using AutoIt to do just what your asking, thought im not sure how well it will work on the pictures of doors u posted few months ago. If i find it I will post here.

However I have used this before its not perfect but it does the job (for me anyways:D )

http://www.codeproject.com/Articles/10248/Motion-Detection-Algorithms

@FastFrench I will properly require you assistant soon :D - hope you can help :)

Link to comment
Share on other sites

  • 3 weeks later...

Hello all,

sorry for the long delay with no news.

A new version - 2.1 - is available for download. It should solve most of the problems you reported.

Enjoy !

Maybe I'd put the sources on a public vault. Someone would be interested in maintaining this ? (C++ code inside)

Hi FastFrench,

i really appreciate your work. I use your dll in several project (also in delphi/c++) and i would he happy if i could help you in further codings or maintaining a "branch".

Link to comment
Share on other sites

  • 3 weeks later...

I have a question. How can I just search for ONE pixel, instead of the pixel closest to the given point? I have mine set to search for one pixel, but it always returns true even if the pixel doesn't exist.

#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <FastFind.au3>

$Main = GUICreate("", 100, 50, -1, -1)
$Button1 = GUICtrlCreateButton("Button1", 0, 24, 73, 21)
GUISetState(@SW_SHOW)

While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button1
WinActivate("Calculator")
Sleep(1000);Give some time to react.
$FFhWnd = WinGetHandle("Calculator")
FFSetWnd($FFhWnd)
Do
FFNearestPixel(108, 142, 0x000000, True)
Until @Error = False
MsgBox(0,"Ok", "Pixel Found!")
EndSwitch
WEnd

Even if the pixel doesn't exist, the MsgBox still appears. I think it's because it's searching the whole program, instead of just the area I specified. Any ideas on what to do?

Link to comment
Share on other sites

Hm, i have tested your script (with adding output of found coordinates) and it's working fine for me:

#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <Includes/FastFind.au3>

$Main = GUICreate("", 100, 50, -1, -1)
$Button1 = GUICtrlCreateButton("Button1", 0, 24, 73, 21)
GUISetState(@SW_SHOW)

While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button1
WinActivate("Rechner")
Sleep(1000);Give some time to react.
$FFhWnd = WinGetHandle("Rechner")
FFSetWnd($FFhWnd)
Do
$pixel = FFNearestPixel(108, 142, 0x000000, True)
Until @error = False
MsgBox(0, "Ok", "Pixel Found! " & @CRLF & "X: " & $pixel[0] & @CRLF & "Y: " & " - " & $pixel[1])
EndSwitch
WEnd

What can cause real problems with FF is if you have Aero Design activated.

Edited by neuronet
Link to comment
Share on other sites

  • 2 weeks later...

@OnlyForMe : if what you want is to know the color of a given pixel, then Fastfind is really of no use to you in that case.You allready have an Autoit function that will give you this information (not sure the name, long time since I've not played with Autoit).

@neuronet : thank you for the offer. I'll put the project to open source when I find the time to do some minimal cleaning ;)

Link to comment
Share on other sites

  • 3 weeks later...

Hi FastFrench, I'm using your FastFind.dll, it works great but sometimes it crashes without any information. When I use VS debugger to debug, it shows that there is an error in the dll "Integer division by zero". Can you fix it or upload the source code if possible so I can find a workaround for it. I'm using FFBestSpot by the way. And thanks for the great work.

Forgot to mention I'm using FastFind.au3 and FastFind.dll(v1.0.8.4) from FastFind2.1.zip

Edited by LightDragon
Link to comment
Share on other sites

  • 3 weeks later...

Hi Fastfrench,

using your dll is fun and works as it should be, but after a while this window with an error msg pops up.

http://www7.pic-upload.de/21.03.13/5q6dtjl52s6p.png

(msg : Zut,y'a une couille dans le potage ! )

Not sure whats that suppose to mean :).

Using FFNearestSpot.

I would be greatful for any hints if someone else suffers from a similar error and managed to fix it.

Link to comment
Share on other sites

Roughly translated from the French, it says there's a testicle in the soup. In otherwords, something in the dll really screwed up badly.

If I posted any code, assume that code was written using the latest release version unless stated otherwise. Also, if it doesn't work on XP I can't help with that because I don't have access to XP, and I'm not going to.
Give a programmer the correct code and he can do his work for a day. Teach a programmer to debug and he can do his work for a lifetime - by Chirag Gude
How to ask questions the smart way!

I hereby grant any person the right to use any code I post, that I am the original author of, on the autoitscript.com forums, unless I've specifically stated otherwise in the code or the thread post. If you do use my code all I ask, as a courtesy, is to make note of where you got it from.

Back up and restore Windows user files _Array.au3 - Modified array functions that include support for 2D arrays.  -  ColorChooser - An add-on for SciTE that pops up a color dialog so you can select and paste a color code into a script.  -  Customizable Splashscreen GUI w/Progress Bar - Create a custom "splash screen" GUI with a progress bar and custom label.  -  _FileGetProperty - Retrieve the properties of a file  -  SciTE Toolbar - A toolbar demo for use with the SciTE editor  -  GUIRegisterMsg demo - Demo script to show how to use the Windows messages to interact with controls and your GUI.  -   Latin Square password generator

Link to comment
Share on other sites

Something like that gave me my googletranslator aswell.

This error seems to trigger often when the search for FFnearestspot should find more then 1 "nearestspot". it´s like it cannot decide which Array to return. But on the other end when I let it search the whole screen and not define a part of the screen for the search with FFSnapShot() ,it seems to work without that error msg popping up. But then its way to slow to be of use for me :(.

Link to comment
Share on other sites

  • 3 weeks later...

Hello,

let me try to explain where this message appears : when the generic search function (GenericColorSearch) finds a proper spot corresponding to its criteria, then there is a heuristic post-processing that enlarges the area a little bit and check if we've not missed a better spot close. The message appears when the number of good pixels in the enlarged area is smaller than the initial count during first step.

Obviously, a simple way to remove this error would be to remove this post-processing ;)

But there is something strange about this error : I thought I've removed this message in version 2.1. Do you still have it in this last release ?

Thanks for your interest in FastFind.

FF

Edited by FastFrench
Link to comment
Share on other sites

But there is something strange about this error : I thought I've removed this message in version 2.1. Do you still have it in this last release ?

I am pretty sure I used the latest release of FF. So yeah it is still present. Currently using colorcount function as "workaround", but a fix for FFNearestSpot would be great and I would have less work to do. :sweating:
Link to comment
Share on other sites

Can you release your .dll please FastFrench? I know you don't have time to fix everything but I want to fix the Divided by zero bug in FFBestSpot function. I have to scan the whole screen currently for not getting that bug. But it's too slow that way.

Link to comment
Share on other sites

  • Developers

Please please please.

This is enough Bumping and begging.

This member hasn't been online since April 11 which clarifies why not answering.

Jos

SciTE4AutoIt3 Full installer Download page   - Beta files       Read before posting     How to post scriptsource   Forum etiquette  Forum Rules 
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...