Pattern recognition of basic shapes in Rev

Randall Reetz rlreetz at
Tue Aug 17 14:30:27 EDT 2010

I am working on two such filters.  The first is a brute force recognizer looking for matches to standard shapes (point, line, angle, triangle, rectangle, polygon, oval, conic and cylindric sections) and how closely a user drawing matches platonic forms of these (exp.  right and equilateral triangles, square, right rectangle, golden rectangle, parallelogram, circle) at any rotation.   The second filter is one I have been working on for 15 years and is a universal pattern engine which does the same as above but without a set of arbitrarily pre-defined target shapes.  From the self-evolving AI perspective from which I work, I consider the first filter set cheating and embarrassing (but hey, it is far easier to pull off).

By the way, anyone can copy a code library or algorithm.  I am always interested in the ways different people go about solving problems like this.  The way I attack a problem is by collecting salient data.  What can I know about these user created polygons (number of points (or line segments), vertice angles between segments, relative segment lengths, relative distance of each vertices from the object's center of area, open or closed, etc.)?  Once this data is collected and stored for all user polygons, it can be compared with the same data collected from platonic shapes.

How would you go about solving this problem?

On Aug 17, 2010, at 1:38 AM, David Bovill wrote:

> Thanks Mark - great paper!
> There does not seem to be a lot of code around - nearest I can find is
> here<>.
> I'd have thought it was something built into the touch screen OS's as it is
> kind of essential for vector graphic drawing on touch screens?
> On 17 August 2010 04:58, AcidJazz <mpezzo at> wrote:
>> Here's a link to a technical article that discusses the fuzzy logic
>> involved
>> in pattern recognition of shapes.  It doesn't provide the exact algorithm,
>> but should get you a little further down the road in your search.
> _______________________________________________
> use-revolution mailing list
> use-revolution at
> Please visit this url to subscribe, unsubscribe and manage your subscription preferences:

More information about the Use-livecode mailing list