Hi !
Featured games (90)
games approved by the League of Dukes
Games in Showcase (781)
Games in Android Showcase (233)
games submitted by our members
Games in WIP (857)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
    Home     Help   Search   Login   Register   
Pages: [1]
  ignore  |  Print  
  Fast Image Differencing  (Read 2139 times)
0 Members and 1 Guest are viewing this topic.
Offline aNt

Senior Devvie


« Posted 2003-09-24 06:55:29 »

just wondering if anyone has some starter info on image differencing.

i have a frameOne image and a frameTwo image. frameOne is just an image of say a wall, frameTwo is an image of a person standing infront of the wall.

i would like to get the bounds of the area the person is standing by looking at the difference of the 2 images. and then maybe the silhouette ouline of the person.

as fast as posable- near or real-time would be fantastic.
Offline oNyx

JGO Coder

Medals: 2

pixels! :x

« Reply #1 - Posted 2003-09-24 12:05:02 »

In order to cut down the calculations you should first sort everything you don't need.

Do you need color?

Do you need the full resolution?

Two downscaled grayscale images can be much easier and faster compared. The downsampling itself takes away one step as a side-fx - averaging of several pixels.

That are all hints I can offer right now, because I don't really know what you excactly need.

edit: oh... and don't forget a fuzzy threshold (eg more than+/- 5% differnce in brightness [grayscale])

弾幕 ☆ @mahonnaiseblog
Offline swpalmer

JGO Coder

Exp: 12 years

Where's the Kaboom?

« Reply #2 - Posted 2003-09-24 15:36:49 »

What you are after is called a "difference key" in video land.  It's a good technique to use to try to avoid the coloured fringes (spill) that you can get with blue or green screen techniques. It requires a stationary camera though (or it gets a whole lot harder)

The simple thing to do is to get the array of raster data for the BufferedImages and then just construct a new array with pixdif = pix1-pix2;
(or set the alpha component to 255 or 0 based on the result of the difference * some threshold..)

Apply a threshold to this and scale it so you basically have a binary mask... (pixel is background or not)  then you can experiment with more stuff to smooth edges and despeckle, etc.  getting rid of "wholes" in the foreground where it just happens to match the same colour as what was behind may be tricky.

You didn't say the size of the images, but I think you should be able to do 320x240 or similar at 30fps (real-time for television video) without too much effort.

Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline aNt

Senior Devvie


« Reply #3 - Posted 2003-10-09 12:52:33 »

nice one- me trying that at the moment.. im using IR-Camera. so maybe a little faster with that.. being only RED and BLACK.
Pages: [1]
  ignore  |  Print  

hadezbladez (1176 views)
2018-11-16 13:46:03

hadezbladez (528 views)
2018-11-16 13:41:33

hadezbladez (1187 views)
2018-11-16 13:35:35

hadezbladez (273 views)
2018-11-16 13:32:03

EgonOlsen (2570 views)
2018-06-10 19:43:48

EgonOlsen (2789 views)
2018-06-10 19:43:44

EgonOlsen (1565 views)
2018-06-10 19:43:20

DesertCoockie (2269 views)
2018-05-13 18:23:11

nelsongames (2122 views)
2018-04-24 18:15:36

nelsongames (2816 views)
2018-04-24 18:14:32
Deployment and Packaging
by philfrei
2019-02-17 20:25:53

Deployment and Packaging
by mudlee
2018-08-22 18:09:50

Java Gaming Resources
by gouessej
2018-08-22 08:19:41

Deployment and Packaging
by gouessej
2018-08-22 08:04:08

Deployment and Packaging
by gouessej
2018-08-22 08:03:45

Deployment and Packaging
by philfrei
2018-08-20 02:33:38

Deployment and Packaging
by philfrei
2018-08-20 02:29:55

Deployment and Packaging
by philfrei
2018-08-19 23:56:20 is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!