Slashdot Mirror


Saving Energy Via Webcam-Based Meter Reading?

squoozer writes "Like many people, I am trying to cut down on the amount of energy my family and I use in order to save both the environment and my pay packet. Since I want to do this in as scientific a way as possible, I'm taking meter readings every day and recording them in a spreadsheet (OOo Calc naturally). Currently, in the UK at least, neither gas nor electricity meters can be hooked up to any sort of device that can query the meter for its current reading. Rather than climb down into the cellar every day to read the meters, it would be great if I could simply position a webcam in front of each meter and have the value logged automatically each day. The problem is that while I am a software developer (Java mostly) I have no experience in image processing (dials from the electricity meter) and don't really know where to start with this project." Does anyone have any advice for analyzing the visual data this reader would be gathering?

11 of 215 comments (clear)

  1. Current reading? by Hatta · · Score: 3, Funny

    My meter reads in kilowatt hours, not amperes.

    --
    Give me Classic Slashdot or give me death!
  2. what's your goal? by gEvil+(beta) · · Score: 4, Insightful

    I'd say your approach completely depends on your goal. If your goal is as stated, then I'd use the webcams to get shots of the meters, then I'd take the 2-3 minutes or whatever it takes a week to pull up those images and transcribe their values into the spreadsheet. If the goal is a programming exercise, then go to town with figuring out some way to automate that few-minutes-a-week task. Of course, in order to do that, you'll expend a whole lot more energy than you'd take to read the meters (via the webcam shots) yourself.

    --
    This guy's the limit!
  3. Simple solution by halcyon1234 · · Score: 5, Funny

    Post the images as CAPTCHAs that protect porn pictures. You'll have the values typed in for you in no time.

  4. Rubbish by megalomaniacs4u · · Score: 3, Informative

    in the UK at least, neither gas nor electricity meters can be hooked up to any sort of device that can query the meter for it's current reading.

    Rubbish. Look up smart meters gas & electric meters which update the utility company continously on usage which they can provide to you as well. (currently insanely popular after the recent documentry on smart meters)

    If your supplier is reluctant to include you in the trials, for electrical use try "Wattson" or other similar personal wireless power meters (also sold out everywhere, but there a cheaper more functional equivalents around)

  5. Kill-A-Watt? by corsec67 · · Score: 3, Informative

    A Kill-A-Watt might be a better choice for "power trimming", since you can get an instant reading of the power used by anything that plugs in.

    On my website I have a couple of webcams that I grab the image from at a specific interval and store the result. Basically, if you get a Trendnet TV-IP201 and a Pentax 10mm f/1.2 lens with a C-mount to CS-mount adapter, you can just wget the image however often you want. Image processing is another issue, but I don't know anything about that.

    --
    If I have nothing to hide, don't search me
  6. The standards are coming (some already here) by randyest · · Score: 4, Informative

    Your power company is probably already looking into standards like Homeplug (main org site) (wiki link) that provide meter data much more accurately than a webcam and image analysis software. This allows them to save money on paying sneaker-net meter readers, and real-time usage data for load balancing and prediction.

    Whether or not they'll specifically give you access to the data is somewhat moot, since it's network-over-powerline and there are already consumer devices that can access the same network and (eventually if not already) be hacked to reveal the data being sent from your meter.

    It's an exploding industry (like 20-30% CAGR in the US alone, higher in other less-developed areas where the first power meters will be homeplug-capable) so I wouldn't suggest putting too much effort into your image-analysis idea at least for a few months to see what happens in homeplug-world.

    --
    everything in moderation
  7. Do what the meter supoorts? by bugg · · Score: 4, Interesting

    Often the meter supports some sort of data export mechanism, and you just need to tie into it. Hacker extraordinaire Poul-Henning Kamp did this with his gas meter.

    --
    -bugg
  8. Re:I don't know if it's anything like in Canada by the_other_one · · Score: 4, Insightful

    But you must not block the meter dials from view. Someone goes to check the values manually, every once in a while (monthly?).

    If you have the same kind of "spinning wheel with a mark" under the small dials, it might be easier to check for the number of revolutions of that wheel.

    Of course your biggest power drain will be from the computer that is always on reading the meter.

    --
    134340: I am not a number. I am a free planet!
  9. Re:OCR plugins? by smellsofbikes · · Score: 4, Informative

    This guy has an algorithm run in matlab to convert dial indicator readings to numbers using MatLab. He claims 99% accuracy over 2000 readings.

    --
    Nostalgia's not what it used to be.
  10. Orientation analysis in an image by kebes · · Score: 3, Informative

    The image analysis question is interesting. You are trying to read dial positions, so conventional OCR is probably useless (unless there is a package to do exactly that?).

    What you can do is use image processing commands (in your favorite programming language; a shell script, Python, etc.) to crop the image to generate a small image for each dial. Then convert to grayscale (and maybe increase the contrast to highlight the dial). To then calculate the preferred orientation in the image, you calculate gradients along different directions. There will be a much higher value for the gradient along directions perpendicular to the preferred axis. This procedure is described very briefly in this paper:
    Harrison, C.; Cheng, Z.; Sethuraman, S.; Huse, D. A.; Chaikin, P. M.; Vega, D. A.; Sebastian, J. M.; Register, R. A.; Adamson, D. H. "Dynamics of pattern coarsening in a two-dimensional smectic system" Physical Review E 2002, 66, (1), 011706. DOI: 10.1103/PhysRevE.66.011706

    This is easiest to do if you use a graphics package that has directional gradients built-in (but coding it yourself probably wouldn't be too hard). Basically you create copies of the image and on one you do a differentiation in the x-direction, and for the other one a differentiation in the y-direction. Let's call these images DIFX and DIFY. Then you compose two new images:
    NUMERATOR = 2*DIFX*DIFY
    DENOMINATOR = DIFX^2-DIFY^2

    Then you calculate a final image:
    ANGLES = atan2( NUMERATOR, DENOMINATOR )

    (All the above calculations are done in a pixel-by-pixel mode.) The final image will have an angle map (with values between -pi to pi) for the image. It should be easy to then use the avg or max over that image to pull out the preferred direction. You may also improve results by tweaking the initial thresholding, or by adding an initial "Sharpen Edges" step, or by blurring the NUMERATOR and DENOMINATOR images slightly before doing the next step.

    In any case, the above procedure has worked for me when coding image analysis for orientation throughout an image (coding was done in Igor Pro in my case). So maybe it is useful for you.

  11. Re:this is lame by joshuac · · Score: 3, Insightful

    How is it lame to ask other people questions when learning how to do something yourself?