Imaging by Cell Phone Project

The project requires two or more cell phones in a dark container. One of the phones will take a picture with its flash. The other phones will take a picture without flash by holding the equivalent of their shutters open long enough, and with the right timing, to use the flashing phone for illumination.

Then each phone in the container will take a turn at taking a picture with a flash, and all other phones will use the flash from that currently flashing phone to get a picture in the same way.

When all phones have flashed, the images will be transferred to to PC for processing.

My questions:

1) Will acquiring the images in this way require a custom phone application in each phone?

2) Which phone, and which phone OS, is best suited for this task?

3) If a custom app is required, what IDE should be used? The project is on a low budget, so an IDE licensing cost is a factor.
Reply to
Artist
Loading thread data ...

For what purpose? SfM?

Likely. Consider how you would trigger each phone -- let alone tell it whether it is its turn to use its flash.

Does the camera API let you hold the shutter "open", indefinitely? Or, does it require you to pick from one of N exposure times? Or, is it all automagic?

How do you have the phones talk to each other? Or, do you run the entire process open-loop? (in which case, how do you tell each phone "you are #N"? "Of M"?)

Do you synchronized to GPS time to eliminate the need to pass timing information between phones?

Reply to
Don Y

I am not at liberty to disclose the purpose. This a Phase 1 proof of concept SBIR project. So I seek an arrangement to accomplish it with the least effort, and expense. Having all phones controlled by one of the phones, or an external laptop, will be acceptable.

I expect communication would be by Bluetooth. USB is also acceptable. Whichever requires the least effort. Synchronizing with GPS time is an excellent idea if it is not practical to do it by Bluetooth, or USB. Communication has to be too way, because the images from all phones have to aggregated into the master phone, or mastering PC, for processing.

It looks to me now that Android would be the best OS for this, and the IDE should be Android Studio. Unknown by me now is whether exposure time is controllable in its camera API. Possible scenarios are:

1) Command shutters open on all camera's other than the flashing camera. Take the picture with flashing camera. Then close all the shutters. 2) On all the cameras that do not flash, set an exposure time lone enough to assure the flash from the flashing camera is captured, and no longer than that. Trigger the non flashing cameras, then trigger the flashing camera.
Reply to
Artist

Since you will need to power these cameras/phones, you could use USB for both communications nd power.

Or, USB for power and WiFi or BT for comms. BT isn't all that great for long time connections in my experience but maybe WiFi isn't either ? Or USB ? They will all need some kind of Watch-Dog in my opinion.

IDEs for Android phone apps are free. Androind Studio I think it is called comes to mind.

I think this might be kind of a difficult app to do so you would have to find someone that is really good is my guess. At my work, we can't even seem to get someone to do a simple app like a data monitor to a Bluetooth dongle. Might try one of those app developer web sites.

We have done SBIRs before. At leaset you are at phase 1. Good luck ! boB

Reply to
boB

The OP hasn't mentioned anything about how the units are placed: "... in a dark container". That could be a *shoebox* -- or, a shipping container! In the latter case, cable lengths can be on the order of 10 or more feet -- esp if *each* unit is tethered to a "master" (of some sort).

There are Tx/Rx latencies in all of these technologies. Can the OP control when a particular message "hits the wire"? ("air"?) Or, how soon after Rx the message is available to the application?

And, are these times *bounded* in any way?

Is there anything that insists only a *single* flash be generated per exposure interval? Why not *two*?

First nail down your requirements so you can see if the developer is capable of meeting them. Someone who isn't aware of the timeliness constraints (and hasn't enough experience to know what the phone/OS guarantees in that regard will be) is likely going to waste a lot of time ($$) and produce dubious results ("Well, it *kinda* works...")

I think apps, like web pages, have devolved into "frameworks with annotation" -- in the spirit of letting *anyone* be a coder (you don't need to understand what you're doing, just tie these things together and *hope*!)

Reply to
Don Y

The government's SBIR proposal request requires the photos be taken by cameras in cell phones. The philosophy is that it be done with readily available off the shelf devices, of which cell phones are ubiquitous. The request also requires that they be shot by the means I described.

The cell phones are to be distributed within a roughly 3' diameter dome, where they will be mounted on its inner surface. It is a given that the interior of this dome will be in total darkness, and that the cell phones will be stationary. I judge it safe to count on it being so for this project.

I cannot get into what image processing will be done with the collected images.

I am looking at the usefulness of this now:

formatting link

Reply to
Artist

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.