2011-05-25 22:33:20

I think the problem is that the sounds blend too well. I had a similar problem with a game I tried to make a few years ago (basically an audio version of games like Columns), where the different colored blocks were represented by differnt pitched tones. The problem was the tones were so similar despite the pitch that I couldn't keep track of what was what (and my board review system was terrible, but that's another topic). I remade it recently using more distinct sounds--a strike to a small bellset, a synthesized tone that fades out, modified cheap laser sounds, a cane whacking the floor, Etc. The game is still pretty buggy, but considerably more playable than its predecessor. But it doesn't sound anywhere near as musical.

I could try to make another example using the sounds from that game, I suppose. So long as it isn't too annoying. smile

看過來!
"If you want utopia but reality gives you Lovecraft, you don't give up, you carve your utopia out of the corpses of dead gods."
MaxAngor wrote:
    George... Don't do that.

2011-05-25 22:54:26

Here's my second try. No reverb this time:
http://dl.dropbox.com/u/16520690/photophone2.mp3
I think the fact that the different pitched sounds are so far out of sync with one another makes it difficult to link them to a single object.

(spoiler):  There are supposed to be three objects. One on the mid left, a slightly lower one toward the middle, and a tall skinny one on the right.

看過來!
"If you want utopia but reality gives you Lovecraft, you don't give up, you carve your utopia out of the corpses of dead gods."
MaxAngor wrote:
    George... Don't do that.

2011-05-25 23:54:24

On the software shapes side of things, I've been making some pretty good progress.  It isn't working perfectly yet, but it's able to read from the web cam and convert the image into a dozen, or so, fairly basic shapes.  I'm going to make sure I have this working perfectly before I move on to assigning sounds to anything though.

I actually had an easier time with the first sound example CAE.  I just couldn't figure out what the different sounds represented, so there would be a bit of a learning curve to it.

- Aprone
Please try out my games and programs:
Aprone's software

2011-05-26 12:31:37

I tried a couple more (but I only saved one...).

The one I didn't save used continuous sounds like the first one. I actually tried to have more than just those two, with one of them tracing while the others played constantly. What I found was three objects was kind of understandable, but once I added a fourth it got much harder to tell what was going on.

The one I did save, I tried to combine the two approaches. I picked three instruments with fading sound (a bass, a harp and a vibrophone; I picked those three because I tend to associate those sounds with blue / red / green respectively).
Aside from the instrument choices, I decided that each object should be separated from the others by a small amount of time, so it'd be easier to tell them apart. I was pretty satisfied with what I could tell about three (one of each color), so I decided to add a fourth that blended two colors (it's supposed to be yellow, but that isn't as easy to visualize based on the sound as the basic three).
http://dl.dropbox.com/u/16520690/photophone3.mp3
The recording replays three times, each with a different tempo.

I think the continuous sounds of the first example work ok for simpler things (like identifying a tree or a person's clothing). I like this third approach for more complicated images, though.

看過來!
"If you want utopia but reality gives you Lovecraft, you don't give up, you carve your utopia out of the corpses of dead gods."
MaxAngor wrote:
    George... Don't do that.

2011-05-26 13:26:23

what kind of things you need to know?

2011-05-26 16:18:25

By separating the sounds with the small gap, even I was able to finally distinguish them rofl!  Are you coding stuff to produce these examples, or are you playing them with a music synth?  I just wondered.  This one is also quite pleasant to listen to, which is a good thing.

Kacijako, you'll have to read the posts to find that out.  Thanks.

I've started taking my code in a slightly different direction.  So far, I've been trying to get the program to just split the screen into the different shapes so that the user can hear the sounds and try to make sense of the view.  More and more that was bothering me while I was at work.  The time I was spending with the seeingwithsound.com program really showed me how tricky it would be to train your brain to sort out all of the noises to understand what was important and what was simply background nonsense.  Even when my program filters out background noise, we're left with a similar problem.  Lets say the scene gets divided into 12 shapes by the computer, currently it would toss the sounds at you for all 12, even though half are probably pretty worthless to you.  A handful of those shapes are probably just the background wall your friend is standing in front of, so by having to hear those it may distract you away from the subject you're trying to focus on.

I'm trying to make the software smart enough to do some of that work for you.  Rather than just dividing up the scene into shapes, it creates a list of all of the different ways it Could! divide up the scene.  Those potential sections are then graded based on how similar they are to neighboring sections.  The more contrast there is with the others, means this object would normally stand out to a sighted person viewing the scene.  A single red ball sitting in the snow will immediately draw the attention of anyone who glances in that direction, so this software should help you do the same with sound.  Once the sections are graded, it will toss out all except the highest ranked ones.  If it works the way I hope it will, this should help eliminate worthless background information and will focus only on the most contrasting aspects of the image.

There could be drawbacks to this approach, I won't know until I get it working, but that's my current idea.

- Aprone
Please try out my games and programs:
Aprone's software

2011-05-26 16:38:59 (edited by CAE_Jones 2011-05-26 16:49:02)

I've been using coding and musical synths... that last one was all synth.

Giving the user the ability to adjust contrast seems like a good idea (the seeingwithsound program does something like this, and includes edge enhancement). It seems like there are a lot of variables that go into this that should wind up being up for the user to control. lol

[edit] Hmm, I'm wondering how your shape handling program deals with shapes on top of others (like the ball on snow example). It sounds like it'd probably break up the background shape into several shapes. If it could make sense of backgrounds and treat them as a single shape, that'd surely be more helpful (though I have to imagine this would be difficult).[/edit]

看過來!
"If you want utopia but reality gives you Lovecraft, you don't give up, you carve your utopia out of the corpses of dead gods."
MaxAngor wrote:
    George... Don't do that.

2011-05-26 17:52:20

CAE_Jones, actually that's what I'm working on now.  In the process of breaking up the scene, it would have the background as a series of individual shapes, but I'm in the process of making it realize they are all a part of the same larger thing.  Once I get that working, it would then reconnect those background pieces.  Letting the user adjust contrast is a good idea, but I don't think I explained what I'm doing well enough.  What I'm attempting to do isn't the same as the edge enhancement, or even contrast settings, on the seeingwithsound program.  On both of those examples, the seeingwithsound program simply adjusts the contrast of the image or brightens any lines it believes are edge lines.  In the end, however, it is still up to the user to identify the scene.  That extra contrast, or brighter edges, is hopefully a help to the user, but it is still just trying to help them find the important objects themselves.

What I'm trying to do is make the software smart enough to do that whole step for the person.  This example might help.  If I turn myself to look at my sofa, the fabric has its own pattern to it.  There is wood trim around the front arm rests, a white wall behind it, and a piece of paper resting on one of the cushions.  If the program were only to separate shapes, it would have several shapes just on the sofa alone, probably 1 for the paper, a few for the wood trim, and 1 or 2 for the wall.  Lets just assume we have 12 different shapes in the scene, where only 1 is the paper, and most are the sofa itself.  Normal contrast adjustments or edge detection would only help me identify all 12 shapes, that's all it can do, so I'm still left wondering which are important to me.  If I can get it to work as I plan, my program would first connect the few wall pieces since it understands they are actually the same thing.  Out of the several sofa pieces, some could connect, but most won't because the pattern appears different depending on where you're looking and there's no easy way for a computer to realize they are all the same object.  Instead, my program realizes that the patterned sofa pieces contrast with each other, but not as much as they contrast with the wall, wooden trim, or the piece of white paper on the cushion.  Because of that, those pieces are given a lower score.  The highest score goes to the piece of paper, since white paper on a generally dark blue sofa really contrasts.  The wall gets a good score as well, since it clearly contrasts well with the sofa, but it also loses some points because the wall was composed of 2 pieces, and the more similar pieces exist, the lower the score.  This is why the sofa gets an even lower score.  If the wall differs greatly from the sofa, you'd expect the sofa to differ just as greatly from the wall, but the sofa is composed of more "like" pieces and gets a lower score.  The wood trim stands out a little, but brown on dark blue isn't super different.  In the end, the program throws out many of those original 12 pieces.  You'd be left with 5 pieces ranked in order of score.  As the sounds are quickly cycled through, first you'd be presented with the paper, second you'd hear the wall, then the wood trim, and finally 1 or 2 pieces that were both in fact the sofa.  Odds are, those 2 sofa pieces would represent each half, or perhaps they'd represent the top of the sofa verses the bottom.  Either way, you'd be left with very few things to hear, and they would already be ordered from most important, to least important.  There would be some problems, like your intention could have been to focus on the wood trim which seemed less important to the computer.  Even when that happens, the trim is still there, it just isn't what should jump out at you when you first turn to look at the sofa.  Just like with a sighted person, the very first thing that should grab your attention is the white piece of paper on the dark blue sofa.  Most things in this world are designed so that sighted people will notice the important things fast and easily.  By attempting to recreate that order of importance, I'm hoping it will make this program perform better in real life.

I assumed you were using a synth, but I wasn't sure.  I started to wonder if you were coding up your own seeing with sound type program, and I was going to say I was Very! impressed!  You seemed to be making huge amounts of progress in almost no time, haha!  The synth is a great way to test sound combination, and its good knowing I'm not the only person trying to figure out which sounds will work best.

- Aprone
Please try out my games and programs:
Aprone's software

2011-05-26 18:05:03

That description makes sense. smile

I think in my last example the harp and the vibrophone are a little too similar-sounding, but that's not all that big a deal--there are plenty of sounds to choose from. smile

看過來!
"If you want utopia but reality gives you Lovecraft, you don't give up, you carve your utopia out of the corpses of dead gods."
MaxAngor wrote:
    George... Don't do that.

2011-05-27 13:30:28

Hi,
This all seems rather incredible. This would actually be really interesting, but the one that really has got me excited is the thing you mentioned before mentioning the seeing with sound prospect: the webcam being used for audiogaming.
Anyone who has been around here for a while may remember a rather old game called demor.
I never got to play it properly, due to you requiring gps and all that.
But they made a version that let you use a joystick, and it was ok.
But this seems even cooler, as you can put yourself in the game right in your chair, by looking around you, tracking an enemy, and then firing!
I'd love to do this, so much so, I just hope this gets done sometime.
I'm quite surprised you decided to work on the seeing with sound prospect first, unless you're working on them both at the same time? You could start off with a space invaders style of game with head tracking, I know, I know guys, we have way too many space invader games, but then what if it could track your head going up and down as well? or even your hand?
If it could track your hand then you could have a sword or something.

2011-05-27 14:36:06

Kinda like a wiimote, only accessible...
Actually, the wiimote can be used with PC games... I should really learn how that works...

看過來!
"If you want utopia but reality gives you Lovecraft, you don't give up, you carve your utopia out of the corpses of dead gods."
MaxAngor wrote:
    George... Don't do that.

2011-05-27 18:38:28

Aaron, I suppose I started on the seeing with sound idea first, for a few reasons.  For starters, it is a much more complicated project, and I don't feel like there are as many other developers around here who could do it.  I don't mean to make that sound bad, but only a sighted programmer is going to be able to work this program out with the web cam.  Adding head turning support to a first person shooter seems super complex as well, but I can honestly imagine quite a few developers here giving that a try.  Tracking a moving face is a hundred times easier than tracking everything and interpreting the data.  In a way, I suppose it is like when you see someone post a question on the forum.  If the question is rather odd, and you happen to know the answer, you're almost compelled to take a few minutes to answer it.  If you ignore the post, thinking someone else will take the time to help, there might not be anyone else around who knows the answer.  I'm kind of taking that approach to this seeing with sound program.  I may fail at it, but at least attempting it seems like the right thing to do.

My other reason for doing this one first, is that it could become an even cooler gaming tool than the head tracker!  Lets just assume I pull this off, and we end up with an easy to use tool for seeing with sound.  If you can walk around seeing the world through your web cam, then it stands to reason you should be able to walk around within a game world using the same technique.  I would just design a first person game that outputted all of the data in the same format as the seeing with sound program.  You'd be "seeing" the game world the same way you saw your own house as you walked around with the camera.  Hopefully that makes sense.

It is funny that you asked if I'm working on both at the same time, because really early this morning I started planning out a game that will use the head tracking idea.  Keep in mind, I don't know yet if I can get the head tracker to work properly, but I'm getting a little farther in developing it.  As Dark said earlier, the easiest solution would be for people to wear colored indicators on a head band, but I'm trying desperately to avoid having people do that.  It seems to be too inconvenient for me to demand people locate, and wear, a colored target on their head as they play.  I have stuff here at my house that would work wonderfully, but I need to find a solution that doesn't involve sending things to everyone in the mail Haha!

- Aprone
Please try out my games and programs:
Aprone's software

2011-05-27 19:10:21

People could always tape pieces of construction paper to their headphones (and use the color identifier to tell which is which).
... Though come to think of it, using something like that would make it easier to trick the system by just waving crayons in front of the camera. lol

If you could set up the seeing with sound program to work on what's on the screen, there's a chance it could help make emulations of older console games more accessible, though I have to imagine that'd be a lot more difficult than realistic first person scenarios.

看過來!
"If you want utopia but reality gives you Lovecraft, you don't give up, you carve your utopia out of the corpses of dead gods."
MaxAngor wrote:
    George... Don't do that.

2011-05-27 19:39:20

lol, that's true about the construction paper, although that doesn't always work as well as you'd expect.  Due to differences in lighting, most colored objects will give the camera some trouble.  In my own projects, I use glare resistant foam sheets which are usually intended for children's craft projects.  They are super cheap, where I get a good sized pack for only $1, but I can't exactly start mailing sheets of the stuff out around the world.  On normal paper, from certain angles it will appear pure white or black, even if it is actually a vivid color.  This confuses the camera for a moment, and that would result in some annoying glitches during the game.  Years back I built a helmet for my cat to play a multiplayer action video game online against some people I knew.  In principle, it used the same kind of head tracking technique I wish to achieve here, so I already know what kind of obstacles we'll be facing.  Her first helmet used colored paper, and it would cause the game to suddenly jump around because it could lose track of one of the colored indicators and contort the viewing angle.  A second later it would correct its self, but those glitches happened randomly and quite often.  It wasn't enough to affect the quality of my cat's online gaming performance, you know, since it's a cat! ROFL!, but it would affect a human and probably annoy someone to the point they'd stop playing.  In case you're wondering, my cat did best with a flame thrower, she managed to chase down and wound several people, but in the end she had a terrible ratio of kills to deaths.  What else can you expect from a cat?!

- Aprone
Please try out my games and programs:
Aprone's software

2011-05-27 20:45:16

Heh, that reminds me of someone who told me (don't know if it's true) about how a parrot beat him at Soul Calibur (although, this after the parrot complained that it wasn't fair and he set it up so the parrot could play using a DDR pad!).
When our dog was under a year old, she'd sometimes pick up toy weapons and chase people with them. Not quite as impressive as a cat with a flame thrower, but still... smile

看過來!
"If you want utopia but reality gives you Lovecraft, you don't give up, you carve your utopia out of the corpses of dead gods."
MaxAngor wrote:
    George... Don't do that.

2011-06-02 04:25:45

I'm still having a nightmare of a time with the head tracking, but I suppose each day I'm getting closer to a reliable solution.  Since I can't count on tracking any type of head band or even eyes, my latest attempts have been to track the nose.  If that doesn't work, and it might not, is it safe for me to assume that everyone here has some form of sun glasses?  Hopefully I'm not making an ignorant assumption, so forgive me if I am.  If I can find just 1 face-worn item, that pretty much everyone would have, I can incorporate that into my design and probably have an easier time solving this.

- Aprone
Please try out my games and programs:
Aprone's software

2011-06-03 22:58:17

For those of you who don't know, I've teamed up with Locutus for the game I'm currently designing to use this head tracker idea.  Even if the head tracker doesn't work, for any reason, the game should still be a lot of fun.  I'm trying to design the game so that the head tracking helps a lot, but also I'm trying to ensure that it isn't necessary to play the game.  After all, not everyone will have a web cam even if the head tracking technique works as I plan.

The game is slowly coming along, and I've spent a few hours today working on a map for the game.  I will probably make a handful of maps eventually, but boy this one is taking a long time to do!  The details of the game are still pretty secret, but I think some of you have already heard me say it will be a 3d first person styled game.  That being said, I can pretty much guarantee it has a twist on that genre that will come as a pleasant surprise.  You all know I try my best to make my games unique, so I don't plan to abandon that goal.  The reason my map is taking so long is that I'm going with a strategy that I hope will make navigation more natural.  On top of different radar and proximity detectors, I have covered the map with information zones.  For example, with the push of a button the game could inform you that you're heading East down Washington avenue, passing First national bank, and approaching the intersection.  The game reaches out in all directions grabbing descriptions from all of the maps nearby information zones, hopefully giving you a clear picture of where you are.  The layers allow you to get either a narrow, or a more global styled description.  Zoomed in you may be told you are standing next to the trash can, facing South toward the front desk.  Zoomed out you could be told you are Downtown, west of the park, and south of the International district.  Hopefully this makes sense.

- Aprone
Please try out my games and programs:
Aprone's software

2011-06-04 11:16:12

Hi Aprone.

As I've said before, it's those sort of land mark style navigation methods I use, so I'll appreciate that in the game deffinately.

unfortunately I don't have a web cam, so I'll likely just have to use basic navigation in the game, though fortunately it sounds like that will be pretty clear.

With our dreaming and singing, Ceaseless and sorrowless we! The glory about us clinging Of the glorious futures we see,
Our souls with high music ringing; O men! It must ever be
That we dwell in our dreaming and singing, A little apart from ye. (Arthur O'Shaughnessy 1873.)

2011-06-07 22:36:54

Hey everyone. I like dark's idea with the different colours on your head. I can just imagine having to put different colours on my head every time I play the game. Aprone, great idea. I love it. I would have never thought of something like this. Well done. I hope it keeps going well.

It is better to remain silent and be thought a fool, than to open your mouth and remove all doubt. -Abraham Lincoln

2011-06-20 21:36:04

I've been making tremendous progress, with the head tracking, over the past few days.  I'm getting quite excited about it!

- Aprone
Please try out my games and programs:
Aprone's software

2011-06-30 06:06:38

Well I have an iPod touch, could that possibly be used as a web-cam? I've tried a few apps that use wifi to send the webcam  data to the PC but it doesn't work for some reason.

Devin Prater
My Blog
Follow me

2011-06-30 09:35:36

devin, I'm pretty sure that wouldn't work, because the computer wouldn't identify the ipod as a standard usb web cam.  It's worth a try, but I would be surprised if it worked.

- Aprone
Please try out my games and programs:
Aprone's software

2011-06-30 16:05:44

Oh, OK. Well maybe if I can get an android phone I can use that. I don't know.

Devin Prater
My Blog
Follow me

2011-06-30 17:12:09

An android phone would basically be the same situation.  I don't believe it will work unless you are using a traditional web cam, specifically meant for the computer.

- Aprone
Please try out my games and programs:
Aprone's software

2011-06-30 17:41:24

Ugh. Well then, I can't use it, unless it can work with images, like image files and stuff, I mean the sound vision thing.

Devin Prater
My Blog
Follow me