A kalman filter is I think implementable in numpy without much difficulty, and numpy is already a dependency.
It depends on what you are looking for, but searching Google Scholar on a specific topic is a great way to learn about various algorithms. Nirav On Fri, Apr 10, 2009 at 5:07 AM, el lauwer <[email protected]> wrote: > Hoi, > > Those mask functions sound useful. Do you think it would be a good idea to > implement a kalman filter in pygame that can be used for color based object > tracking. > > Is there a good place I can find computer vision related information. > > Grtz > > > On 9-apr-09, at 18:08, Nirav Patel wrote: > >> Excellent. Making your code available as you work on it is a great >> idea, especially for something like this that needs to be tested on a >> wide range of hardware. >> >> About pattern recognition, something like face recognition is probably >> too heavy for pygame purposes and would be better suited for pyehci or >> opencv-python. However, extending some of the basic computer vision >> stuff would certainly be useful, like higher or even arbitrary moments >> [0] in masks, thresholding with hysteresis, hole detection in masks, a >> mask to surface function, etc. >> >> Nirav >> >> [0] http://en.wikipedia.org/wiki/Moment_(mathematics) >> >> On Thu, Apr 9, 2009 at 11:44 AM, el lauwer <[email protected]> wrote: >>> >>> Hoi, >>> >>> I recently posted my proposal for GSOC to socghop. There where some >>> comments >>> about the content, so I have updated my proposal, and hereby posted it to >>> this mailing list so guys can comment further on my proposal... >>> >>> >>> Rene Dudfield maid the following remark about my original proposal: >>> >>> " >>> Also a section on user testing would be good. Where you ask others to >>> download pygame to run your tests - to make sure it works ok with their >>> computer/camera. >>> >>> Finally a change in your proposal to seek feedback from the community on >>> what changes you will do after the osx stuff is finished would be good. >>> Since I have a feeling that you should have some time left over at the >>> end. >>> " >>> I am planning to make a branch of my code available on github.com so >>> everybody who like can follow my daily work on the project. >>> Later on in the project I intend to make some blog post about my work and >>> post them on reddit.com/r/python, reddit.com/r/mac, >>> pygame ML and other communities so people can test my code. I have 2 mac >>> at >>> home and know some other people with macs who >>> would be willing to test out my work. >>> >>> Pattern recognition is a complicated subject, But I think that it would >>> be a >>> good thing if there where some basic pattern recognition >>> included like a steering wheel or a face. This would allow any gygame >>> programmer to use this feartues in there game without any >>> additional work. A possible interesting project to experiment with could >>> be http://code.google.com/p/ehci/wiki/pyehci >>> >>> If you have any suggestions, remarks or questions please comment. >>> >>> original >>> proposal: >>> http://socghop.appspot.com/student_proposal/show/google/gsoc2009/abe/t123872941171 >>> updated >>> proposal: http://socghop.appspot.com/document/show/user/abe/gsoc_updates >>> >>> >>> ===================================================================== >>> >>> Updated proposal: >>> >>> Instructions >>> >>> Start by getting in contact with the mentor(s) familiar with your >>> proposed >>> project. They will help you polish your proposal and introduce you to >>> the >>> developer team you'd be working with over the Summer. >>> >>> >>> >>> Summary: >>> >>> Nirav Patel has recently implemented camera support into pygame as a way >>> to >>> interact with a game. However, this camera module is limited to the Linux >>> platform. The goal of my project is to extend this camera module to the >>> Mac >>> OSX platform, and thus extending the portability of games written in >>> pygame >>> that use a webcam as mean to interact with the player. >>> >>> I will be using the OSX QiuckTime multimedia framework to work with the >>> camera. The camera module shall be implemented in C as a python >>> extension. >>> It is my intension to fully port the capabilities of the existing camera >>> module. If there are any existing capabilities in the QT Isight >>> framework, >>> that could be useful to have in the pygame module, I will make these >>> available by writhing a wrapper around them. >>> >>> I will use pyobjc to experiment during the project. For the final code I >>> will use objc and C wrappers,since pyobjc is no longer used in >>> pygane. >>> >>> When I am finished implementing the camera module for OSX, I will work on >>> optimizing the existing code, like optimizing the sbggr8_to_rgb function. >>> Ather this I will write documentation and a simple game to demonstrate >>> the >>> capabilities. >>> >>> I am planning to make a branch of my code available on github.com so >>> everybody who like can follow my daily work on the project. >>> Later on in the project I intend to make some blog post about my work and >>> post them on reddit.com/r/python, reddit.com/r/mac, >>> pygame ML and other communities so people can test my code. I have 2 mac >>> at >>> home and know some other people with macs who >>> would be willing to test out my work. >>> >>> Pattern recognition is a complicated subject, But I think that it would >>> be a >>> good thing if there where some basic pattern recognition >>> included like a steering wheel or a face. This would allow any gygame >>> programmer to use this feartues in there game without any >>> additional work. A possible interesting project to experiment with could >>> be http://code.google.com/p/ehci/wiki/pyehci >>> >>> Schedule: >>> >>> I intent to work about 42 hours a week on the project >>> >>> April: >>> Third week: study the camera implementation in linux version and see >>> which >>> methods must me re-implemented for OSX. >>> Fourth week: Read about things like the SequenceGrabber from the QT api. >>> >>> May >>> First week: make simple python extension in C to get familiar with the >>> concept. Read more doc about python extensions. >>> Second week: Implement simple app that grabs images from the camera with >>> the >>> QT SequenceGrabber API in C (obj-C). this is to get a good feeling with >>> the >>> QT api. >>> Third week: start coding on the project, implement the ‘list_cameral’ >>> function and open_device, … >>> Fourth week: write functions that deal with the controllers… >>> >>> June >>> First-third week: implement rest of the functions >>> Fourth week: write wrapper around some additional functionality that the >>> QT >>> framework provides that isn’t in the existing module. I will probably use >>> pyobjc for this. >>> >>> >>> July >>> First week by now, most camera functions must be implemented. Start >>> debugging and testing >>> Second week: write a better sbggr8_to_rgb function and other optimization >>> that aren’t yet implemented in the existing camera module. >>> Thrid week: more optimization and testing/debugging. >>> Fourth week: write simple game to demonstrate functionality, and get >>> people >>> exited about the result. >>> >>> August: >>> First week: write documentation and tut explaining how I made the game. >>> Tie >>> up lose connections >>> >>> About Me: >>> >>> I am a 20 year old student from belgium, and I am currently studying >>> applied >>> computer science at the "Hogeschool Gent". I first became interested in >>> programming at the age of 16 while programming in Turbo Pascal. I spend a >>> lot of my free time coding and reading about related topics. My interest >>> in >>> the field of computer science range from web security, visual user >>> interaction, low level programming, … I enjoy programming in both Python >>> and >>> C because both language are elegant and don’t get into your way. Other >>> interests of mine include, but are not limited to films, music, poker and >>> reading. >>> >>> I speak fluent Dutch and English >>> >>> I have GOOD knowledge/experience with the following programming >>> languages: >>> >>> * Python >>> * C >>> * C++ >>> * Object-C >>> * Java >>> * SQL >>> * (X)HTML/CSS >>> >>> and MEDIUM knowledge/experience with the following programming languages: >>> >>> * JavaScript >>> * Bash >>> * sed, awk >>> >>> I have the following (relevant) skills: >>> >>> * Algorithms: sorting, searching, image filters, ... >>> * Lineare algebra >>> * Data structures: lists, maps, sets, ... >>> * Web security: sql-injection, code/file injection, XSS, ... >>> >>> Here is a list of things I have coded, including some small pygames: >>> >>> * Statistical visualization of combination of enzymes in DNA: Java, >>> GUI, >>> SWING, MVC, OOP, XML >>> * Monopoly Game: Java, GUI, SWING, MVC, OOP >>> * Managing application: Java, GUI, SWING, SQL, MVC, OOP >>> * Image filters: C/C++, OOP, Templates >>> * Sniffer: C, pcap >>> * Simple chat-client and server: C, pthreads >>> * Poker odd calculator with GUI (work in progress): C, Object-C, >>> Reverse >>> Engineering >>> * Small IRC bot: Python >>> * Sniffer: Python (reimplementation of the C one) >>> * Blog engine: Python, Django, Web >>> * Simple Blind SQL-injector (ugly script :P): Python, SQL, Web Security >>> * a lot of small python scripts to do think with text, web, ... >>> * Tetris: just Tetris (pygame) >>> * Square vs Circle: You control a circle with your mouse, and must try >>> to >>> place this circle in >>> a square without hitting one of the bouncing circles. If you succeed, >>> you must try again, but >>> this time with an extra circle. (pygame) >>> * Divide and conquer: There is an amount of an always increasing number >>> of bouncing balls. You >>> Must try to drive the balls into a corner by drawing lines until you >>> have filled 70% of the >>> screen. (pygame) >>> * Balls of steel: similar to the above, with the difference that you >>> must >>> draw balls >>> by holding down the right mouse key, the longer you press the bigger >>> the ball.(pygame) >>> > >
