Pages: [1]   Go Down
  Print  
Author Topic: Peddle4ever's feature requests  (Read 859 times)
0 Members and 1 Guest are viewing this topic.
peddle4ever
Newbie
*
Offline Offline

Posts: 3


« on: 31 / July / 2008, 23:07:47 »

Hey folks,

here’s my wishlist of firmware improvements.  Some apply to most Canons while others are G9-specific.  I'm a big fan of the G9.  I take it backpacking around the world for months, taking tens of thousands of pics.  So I’ve had plenty of time to brainstorm improvements.  My apologies for the verbosity.  I'll put my G9 requests in a separate section.

As far as feasibility, perhaps a developer could comment.  My understanding is that CHDK adds a superset of features to the factory firmware.  But that it can't modify existing functionality (completely replaces it?).  As far as the G9 specifically, I understand it uses DryOS so CHDK hasn't been ported.  Hopefully someone is seriously working on it (and the upcoming G10).  I wish I could help in the dev effort but I'm not an embedded systems programmer.  I'd be willing to beta test builds, however, with my G9 and SD450.  I've tried to research and leave out features which have already been proposed or implemented.  My appologies if any of these requests are redundant.  Here goes:


Features applicable to most models:
* Faster "everything"! I'd like speedy fast and responsive menus, faster zoom, focus, higher fps, no annoying lag in resuming after "hold".  The auto white balance takes up to 5 seconds - too slow.  I suspect many features are slowed down deliberately by Canon (timing loops or whatever).  Canon's DSLRs have much more responsive menus and functions.  Even the G9's is snail slow yet uses the same Digic III ASIC as SLRs.

* More steps (finer granularity) on the optical zoom (not sure if this a limitation of hardware or firmware)

* Allow user to specify EXIF fields like "Artist Name", "Author", besides just "Owner's Name".  Others have been proposed.  Perhaps someone could collect these and make a separate "EXIF tags we'd like to see" thread.

* For shooting video: please, oh please display the length of time remaining while shooting.  Currently the camera doesn't tell you.  So you end up unexpectedly filling the card.

* Support the display of externally processed JPGs.  Currently it throws an error ("Unidentified Image") if you try to display an image that was processed, renamed or otherwise changed (even with Zoombrowser!) outside of the camera, then put back on an SD card.  So frustrating, especially when trying to make a slideshow!

* Have the option to store portrait images properly rotated.  Not merely with the EXIF rotation flag set but physically stored in a vertical format.

* A user selectable feature to automatically disable image stabilization for time exposures longer than a certain length.  The problem is the IS system is noisy (hunts and seeks).  For long time exposures (like >1 sec) the hunting and seeking behavior significantly blurs the image.  I sometimes forget to shut off IS for long exposures (as Canon recommends).  An auto shut-off feature would have saved many shots.

* Remove restrictions on the length of videos and audio recordings.

* Display audio recording level meter on screen while shooting video.

* Display histogram of frequency information (sharpness) and translate to equivalent megapixel rating.  In real-time (ideally) and/or playback mode.  This will make it easy to determine how sharp an image is.  And determine the "best shot" from a group of shots (what I call the "lucky method").  Others have proposed merely comparing JPG file sizes to determine "best shot".  But comparing histograms is superior since it's the high frequencies that matter.

* Use false color to indicate sharpness.  Same idea as the zebra pattern for exposure.  This allows a relatively low resolution LCD to tell you exactly which areas are in-focus (or not).

* Ability to shut off LCD backlight.  This will extend battery life for shooting lengthy videos on tripod (or audio) like concerts, weddings, etc.  With the G9 the Display button indeed shuts it off but NOT in video mode, sadly.

* Improve the playback display to show more EXIF tags (all?).

* Total control of video frame rate.  This would allow user to adjust rate from time lapse, to fast motion to slow motion (fastest frame rate).  An interesting effect would be to automatically change the rate while shooting in real-time.  Say from normal speed to extreme slow motion or vice versa.


Other features/utilities I'd like to see:
* A robust memory card testing utility.  How many times have you lost pics due to a flakey card?  This would test for a long period of time or until the user stopped it.  It would test more thoroughly than the low-level format.  I think this feature is increasingly desirable as card capacity increases (currently at 32GB).  The utility needs to be in the camera so you can test in the field (ie, on long trips, etc).

* Software which counts bad pixels automatically.  Provides an instant on-screen report of the "quality" of the image sensor.  Background: most (if not all) image sensors have defective pixels.  Manufacturers may map and subtract them out, similar to dark noise frame subtraction.  The way I test a camera is by doing long time exposure in the dark.  Then use software to increase the brightness (may take a few passes) until you see the bad pixels (red, green and blue dots).  If you haven't done this yourself you may in for a shock.  Imagine making a bootable SD card with a build which automatically tests the sensor?  You could walk into a camera store and pop it into every camera to cherry pick the best one.  Cool!  It could be based on the CHDK "hot pixel removal" code.  The build would create a bootable, dedicated SD card which automatically does the test with no menus or button pushing required.  It would run on a timer so you put the card in, turn on the camera and then put it in the dark (wrap it up and put it in a bag or box, etc) and wait a few seconds.  The display would graphically show the bad pixels (exaggarated for easy viewing) plus a quantitative measure of overall "quality" (ie, number of bad pixels or whatever).

* A proper audio recorder with no restrictions on length of recording.  And with on-screen level meter and real-time record level control.  Personally I'd prefer uncompressed audio format for highest quality.  Plus 32GB SD cards are so cheap these days why bother with compression?

* Support external USB peripherals such as an external GPS device for location-based EXIF tags.  A hardware bridge may not be required since most Canon cameras can connect to printers directly.  This would imply the USB port can be configured as both a host and peripheral.

* An integrated automatic bracketing and stacking algorithm.  Would automatically align frames and stack (using the RAW image mixing modes).  It would retain the originals.

* Automatic removal of lens distortion/aberrations (ie, barrel, pincushion, etc) using the actual transfer function of that model of camera.  OK, maybe this is asking too much!

* Software to make the camera into a dedicated electronic range finder.  The focusing system which give the range of different AF points in the scene.  Wouldn't necessarily have to function as a camera in that mode.

* Software to do automatic color calibration using a standard IT8 target.  This could either be entirely in camera or done as a post-processing phase (in a computer and save gamma curve to card).  Results would be similar to the Profile Prism product.

* Software to make camera into a spot spectrometer and light meter.  Camera would tell you the average color in the format of RGB colors, Pantone colors, etc.  This would be useful for paint color matching, for example, (no more bringing living room cushions to the paint store).  Performance would be limited by the absolute color accuracy of the camera, of course (see above).

* Software to make camera into a dedicated Sound Pressure Level meter.  Would display SPL in Db A and C-weighted, averaged and instantaneous.

* Auto leveling feature which would rotate shots so they're aligned properly.  Alternatives would include artificial horizon (semi-automated) or post processing so you could manually rotate to align to a grid.  Practicality would depend on the accuracy of the camera's accelerometers.


Features specific to the G9 (or very similar models):
* Support RAW in all shooting modes.  Currently Canon only supports RAW in a few modes.

* Remember ALL settings when powering off.  Like Macro mode, for example.  This could be a menu option called "Remember Macro setting after power down" or similar.  In an afternoon of shooting wildflowers I may power cycle 50 or 100 times.  It takes several button presses to change to macro mode each time.  I wish it would just remember the setting.

* External lenses: allow user to specify the focal length (in mm) to be stored in the standard FL EXIF tag.  The menu should support several user-defined lenses for easy changing.  It would take into account the zoom factor.  Currently you have a choice of only two official "Canon" lenses.  This seems an unfair way for Canon to push their brand of lenses.  Allow switching back and forth using a programmable Shortcut Button.  And display the setting as a screen icon.  This is important so you don't forget which lens you've set it for.  Granted, this is a work-around for not supporting an electronic lens ID system.  But better than nothing.  This is strictly for tagging purposes (EXIF), especially useful for stitching panoramas and removing lens distortion later.

* Be able to assign more function options to the Shortcut Button.  Such as switching lenses, toggling image stabilization, Macro

* The MF "focus check" feature is great but still not useful enough.  It needs to zoom in even more (25% to 50% more).  Otherwise you still can't quite tell if the image is sufficiently focused, even with a magnifying glass on the LCD.

* Support five-digit filename numbers (ie, IMG12345 rather than IMG_1234).  The more digits the better so every photo/video has a unique name.  To exceed 5 digits may mean breaking the FAT 8.3 length restriction.  I need this because on long trips I'll shoot over 10K shots.  Later they get out of sequence or overwrite each other in galleries.  Using a renaming utility works around this but it's a pain.  I'd rather the camera not create the problem in the first place.

* Improve the usability of the manual focus.  The manual focus "ring" dial can require a dozen or more turns to focus.  Boring and frustrating.

* The panorama feature is currently not very useful IMHO because the images are displayed too small.  I've taken hundreds of panoramas with the G9 and usually resort to doing it manually.  If the size of the images could only be maximized it would much more practical.  It would also be nice to support horizontal pans shot in vertical (portrait) orientation to maximize Y resolution.
Logged
fudgey
Global Moderator
Hero Member
*****
Offline Offline

Posts: 1461

a570is


« Reply #1 on: 01 / August / 2008, 08:21:25 »

Comments to some of your requests. Most of your G9 specific requests are generic to all cameras, btw.

* Allow user to specify EXIF fields like "Artist Name", "Author", besides just "Owner's Name".  Others have been proposed.  Perhaps someone could collect these and make a separate "EXIF tags we'd like to see" thread.

At least customized RAW Exif or Exif to separate file are being worked on.

* For shooting video: please, oh please display the length of time remaining while shooting.  Currently the camera doesn't tell you.  So you end up unexpectedly filling the card.

Implemented in the juciphox build.

* Support the display of externally processed JPGs.  Currently it throws an error ("Unidentified Image")

Not something that many people find necessary. Very likely requires a complete 3rd party jpeg decoder implementation. A lot of work and is probably going to be very slow as at least JPEG encoding is done in hardware.

* A user selectable feature to automatically disable image stabilization for time exposures longer than

Implemented for some cameras, exists at least in ewavrs private a710 build.

* Remove restrictions on the length of videos and audio recordings.

Video length restriction is a file size issue, otherwise already removed I suppose? I have no idea about audio things, A series record quality is too crappy me to care about it.

* Display histogram of frequency information (sharpness) and translate to equivalent megapixel rating.  In real-time (ideally) and/or playback mode.  This will make it easy to determine how sharp an image is.  And determine the "best shot" from a group of shots (what I call the "lucky method").  Others have proposed merely comparing JPG file sizes to determine "best shot".  But comparing histograms is superior since it's the high frequencies that matter.

* Use false color to indicate sharpness.  Same idea as the zebra pattern for exposure.  This allows a relatively low resolution LCD to tell you exactly which areas are in-focus (or not).

These are likely too much processing to do real time in-camera. Best-shot-selector from sharpness by selecting the largest JPEG has already been implemented, don't remember if it's in any build yet. It really is better than comparing histograms since it doesn't take any time and it's likely just as accurate when there really is a bad shot among the good (or vice-versa). I believe the high frequencies increase the file size the most, after all?

Wouldn't an out-of-focus zebra color most of the scene as out of focus, because there is no detail in smooth surfaces like the sky?

* Ability to shut off LCD backlight.  This will extend battery life for shooting lengthy videos on tripod (or audio) like concerts, weddings, etc.  With the G9 the Display button indeed shuts it off but NOT in video mode, sadly.

Implemented for some cameras at least in Dataghost's dev build. Btw, AFAIK the display button normally shuts down the LCD (and it's backlight) and the sensor, which both give power savings. Video obviously needs the sensor enabled at all times, which is why the button doesn't work in video mode.

* Improve the playback display to show more EXIF tags (all?).
There's not much room to add OSD in the playback mode that shows some exif. This should probably be a separate exif browser or separate exif OSD for the full-screen view. In any case there's too many exif tags to fit on screen in one page so it will always be a subset. And one must note values must be dug from MakerNotes because of CHDK overrides.

* Support external USB peripherals such as an external GPS device for location-based EXIF tags.  A hardware bridge may not be required since most Canon cameras can connect to printers directly.  This would imply the USB port can be configured as both a host and peripheral.
USB is a big unknown. There are tons of camera functions related to USB and it's all pretty complicated without any API or hardware documentation. So, nobody's figured out how to work the USB yet. We only have some remote control things now.

* An integrated automatic bracketing and stacking algorithm.  Would automatically align frames and stack (using the RAW image mixing modes).  It would retain the originals.

* Automatic removal of lens distortion/aberrations (ie, barrel, pincushion, etc) using the actual transfer function of that model of camera.  OK, maybe this is asking too much!
In my opinion, all this is better done off-camera because of the superior processing power. But without align, we already have RAW average and some other operations have at least been tested if not implemented in builds.

* Software to make the camera into a dedicated electronic range finder.  The focusing system which give the range of different AF points in the scene.  Wouldn't necessarily have to function as a camera in that mode.
We already have the DoF calculator OSD. Don't know if we can do much better.

* Auto leveling feature which would rotate shots so they're aligned properly.  Alternatives would include artificial horizon (semi-automated) or post processing so you could manually rotate to align to a grid.  Practicality would depend on the accuracy of the camera's accelerometers.
Not accurate enough I think (there are threads about IS you can research). And arbitrary angle rotating is again something that I think is best done out-of-camera. The rotation angle should just be marked in a tag.

* Support RAW in all shooting modes.  Currently Canon only supports RAW in a few modes.
CHDK always writes RAW on any camera in any mode (except movie) if you want it to. But it's not Canon's RAW. There is no white balance information or any other headers. Improvements for CHDK RAW writing are being worked on.

* Remember ALL settings when powering off.  Like Macro mode, for example.  This could be a menu option called "Remember Macro setting after power down" or similar.  In an afternoon of shooting wildflowers I may power
This is a very familiar request.

* Be able to assign more function options to the Shortcut Button.  Such as switching lenses, toggling image stabilization, Macro
Don't know about the G series, but in A series this shortcut button is CHDK ALT key. A long press of that button does the original function. CHDK traps the keyboard and even goes to lengths of trouble to make the shortcut do the Canon thing with that long press. I think this should be possible.

* The MF "focus check" feature is great but still not useful enough.  It needs to zoom in even more (25% to 50% more).  Otherwise you still can't quite tell if the image is sufficiently focused, even with a magnifying glass on the LCD.
A familiar request as well. It's been discussed recently too. Further zooming may not be possible due to hardware restrictions, but a larger focus check window might be.

* The panorama feature is currently not very useful IMHO because the images are displayed too small.  I've taken hundreds of panoramas with the G9 and usually resort to doing it manually.  If the size of the images

The SDM build has some improvements which closely relate to this although I believe it's used for a different purpose there. I'm not sure if it's available in other builds in any flavours, but it certainly could make up a better panorama mode.
Logged
PhyrePhoX
Global Moderator
Guru Member
*****
Offline Offline

Posts: 2265


make RAW not WAR


« Reply #2 on: 01 / August / 2008, 08:48:54 »

some of the requests are already requested, see here: for devs: vacant jobs, must-have features, status & overview / for users: a poll
some even already implemented (like fudgey said, in either the "juciphox" build or ewavrs private build, so it is VERY likely that one day they will be in official trunk).
Logged

yvesson
Full Member
***
Offline Offline

Posts: 179


A540 SX10IS


« Reply #3 on: 01 / August / 2008, 09:42:31 »

Hej,
Fudgey, I'm surprised you said the sound is crappy on A series, it's prolly not as good as S series but imo really okej for recording a conversation or even a guy singing with a guitar with clean sound.
Here

This the begining of a song at a concert I recorded with my A540.

Oh and am I missing something, or you can turn LCD off by putting a jack in the plug while recording the video ?

Logged

poll, which is the best... ?
+ my pics on the same site
PhyrePhoX
Global Moderator
Guru Member
*****
Offline Offline

Posts: 2265


make RAW not WAR


« Reply #4 on: 01 / August / 2008, 09:50:36 »

yes you can Smiley
Logged

fudgey
Global Moderator
Hero Member
*****
Offline Offline

Posts: 1461

a570is


« Reply #5 on: 01 / August / 2008, 10:12:23 »

Fudgey, I'm surprised you said the sound is crappy on A series, it's prolly not as good as S series but imo really okej for recording a conversation or even a guy singing with a guitar with clean sound.
This the begining of a song at a concert I recorded with my A540.
I'll admit my standards are a high when it comes to audio quality, in that clip from about 50% on (when the harmonica(?) comes along) the quality is the next step up from "making my ears bleed" quality, before that it's more tolerable Big Grin  Anyway, from the little that I've recorded video on my a570is I'm often incapable of comprehending speech  Sad.

Oh and am I missing something, or you can turn LCD off by putting a jack in the plug while recording the video ?

Yes you can, I forgot to mention that.
Logged
yvesson
Full Member
***
Offline Offline

Posts: 179


A540 SX10IS


« Reply #6 on: 01 / August / 2008, 10:22:15 »

Hej,
It's an accordion, you can notice it on the left at some parts, sadly for the guy, I didn't notice him while shooting.
Not eveyone likes the sound of accordion, maybe it's not only the sound quality which makes your ears bleed ^^

Logged

poll, which is the best... ?
+ my pics on the same site
peddle4ever
Newbie
*
Offline Offline

Posts: 3


« Reply #7 on: 01 / August / 2008, 19:16:37 »

Hey folks (including fudgey), thanks for the feedback, I appreciate it.  Good points, fudgey.  I was surprised so many features had been implemented or addressed, despite having combed the postings and searched for specific keywords.  So many builds!  A few counterpoints:
"* Support the display of externally processed JPGs.  Currently it throws an error ("Unidentified Image")"
I do think this would be useful for anyone wanting to do a slideshow on TV.  Most compacts output video for slideshows but it's useless if pics have been post-processed (as I mentioned).  It seems there are two general reasons the cameras "reject" a post-processed JPG.  First, if the resolution (or format) has been changed to something the camera doesn't support natively.  Perhaps their JPG decoder is too primitive/inflexible to handle it?  Or maybe it can but they're deliberately trying to discourage people from doing this?  Perhaps it's done in hardware so isn't flexible enough?  I agree doing a custom JPG decoder would be a lot of work.

The second reason seems to be a "not invented here" policy.  If the EXIF headers have been altered from what the camera created, even something trivial (camera model), it won't display it.  Proof is that you can save an original EXIF header in an editor, then manipulate the image all you want, then copy the original header back.  The camera displays it just fine.  So it would seem JPG CODEC limitations aren't the issue.  More likely just laziness or marketing BS to keep users from repurposing compacts as general-purpose media players.

As far as audio quality, it certainly varies from model to model.  But in many situations quality isn't an issue, like recording a lecture or BLOG entries while traveling.

As far as using false color to indicate sharpness, yes good point that "sky" would indicate blurriness.  I suspect a user would quickly learn to ignore that and look at the subject.  Like a face or hair, for example.  If the hair is blurry, the shot is no good.  One could also flip back and forth between multiple shots to easily eyeball the sharpest one.  It's not always the entire shot that matters, just the subject.  For example, photographing a face in a moving crowd.  The JPG lengths would vary randomly from shot to shot.  The "best shot" would be the one where the camera (or face detection) focused on the one you wanted it to.  Or in low light settings, the one where the subject held sufficiently still while the background may have had motion blur (perhaps on purpose).

great feedback, people, thanks!
Logged
Pages: [1]   Go Up
  Print  
 
Jump to: