jpeg page 15 - Dave's Blog

Search
My timeline on Mastodon

David_Risney: Made my first Plated meal. The end of the instructions ask me to tweet a photo of the meal I've made. Do they know what they're asking for?

2015 Jan 24, 5:24
David Risney @David_Risney :
Made my first Plated meal. The end of the instructions ask me to tweet a photo of the meal I've made. Do they know what they're asking for?
PermalinkComments

jacobrossi: "I'm going to push this change to github" responds with: /via

2015 Jan 23, 2:35
Jacob Rossi @jacobrossi :
"I'm going to push this change to github" @somelaniesaid responds with: https://www.youtube.com/watch?v=pE0_GaLsX1Y … /via
PermalinkComments

freebsdgirl: If there is one thing movies have taught me, it's that hacking the Gibson requires accessorizing.

2015 Jan 22, 11:54
[NPC] Randi Harper @freebsdgirl :
If there is one thing movies have taught me, it's that hacking the Gibson requires accessorizing. pic.twitter.com/Q9VcXmGzLn
PermalinkComments

jacobrossi: now uses HSTS, which "coincidentally" is in EdgeHTML engine rolling out to the tech preview

2015 Jan 22, 11:45
Jacob Rossi @jacobrossi :
http://status.modern.IE  now uses HSTS, which "coincidentally" is in EdgeHTML engine rolling out to the tech preview https://github.com/InternetExplorer/Status.IE/commit/31297bc1c8aaf43b4459d49764b5a865b5f66223 …
PermalinkComments

ericlaw: It's not impostor syndrome if you really are an impostor, right?

2015 Jan 21, 1:05
Eric Lawrence @ericlaw :
It's not impostor syndrome if you really are an impostor, right?
PermalinkComments

mrcslws: Yes! Someone actually noticed! You just flooded me with memories from December 2012 :) (/cc )

2015 Jan 21, 12:40
Marcus Lewis @mrcslws :
@ericlaw Yes! Someone actually noticed! You just flooded me with memories from December 2012 :) (/cc @amfelds)
PermalinkComments

David_Risney: Learn about ES6 template strings: I didn't know about tagged templates allowing for HTML encoding in template strings

2015 Jan 21, 12:15
David Risney @David_Risney :
Learn about ES6 template strings: http://updates.html5rocks.com/2015/01/ES6-Template-Strings … I didn't know about tagged templates allowing for HTML encoding in template strings
PermalinkComments

JenAshleyWright: Every time you get dressed remember that, if you die, that's your ghost outfit forever.

2015 Jan 20, 8:58
Jennifer Wright @JenAshleyWright :
Every time you get dressed remember that, if you die, that's your ghost outfit forever.
PermalinkComments

David_Risney: Egg toy unboxing youtube videos made millions via advertising. My 3yo is already ahead of me on what's hip.

2015 Jan 20, 9:08
David Risney @David_Risney :
Egg toy unboxing youtube videos made millions via advertising. My 3yo is already ahead of me on what's hip. http://finance.yahoo.com/news/youtube-s-highest-paid-star-is-a-woman-who-unboxes-disney-toys-062606350.html …
PermalinkComments

David_Risney: The Onion called it 2yrs ago: plans to launch video-on-demand service

2015 Jan 20, 1:29
David Risney @David_Risney :
The Onion called it 2yrs ago: http://Overstock.com  plans to launch video-on-demand service http://tmblr.co/ZykYww1bCzBoP 
PermalinkComments

intoosteep: She died as she lived: walking down stairs checking Facebook statuses.

2015 Jan 17, 6:59
Claire Ayoub @intoosteep :
She died as she lived: walking down stairs checking Facebook statuses.
PermalinkComments

PFTompkins: Did you wish "Hitch" had been about weddings? YOU HAVE TWO WISHES LEFT.

2015 Jan 17, 4:42
Paul F. Tompkins        ✔ @PFTompkins :
Did you wish "Hitch" had been about weddings? YOU HAVE TWO WISHES LEFT.
PermalinkComments

David_Risney: "With crypto in UK crosshairs, secret US report says it’s vital". I think the secret is out on crypto.

2015 Jan 15, 10:10
David Risney @David_Risney :
"With crypto in UK crosshairs, secret US report says it’s vital". I think the secret is out on crypto. http://arstechnica.com/security/2015/01/with-crypto-in-uk-crosshairs-secret-us-report-says-its-vital/ …
PermalinkComments

David_Risney: Reading about new Odd Couple TV series includes an interview with Gary Marshal but I can only hear voice

2015 Jan 15, 9:33
David Risney @David_Risney :
Reading about new Odd Couple TV series includes an interview with Gary Marshal but I can only hear @PFTompkins voice http://www.nerdist.com/2015/01/matthew-perry-and-thomas-lennon-introduce-us-to-their-odd-couple/ …
PermalinkComments

ericlaw: A nice look at HTTP/2 in practice, including use of data frame padding to attempt to thwart datalength-leak attacks.

2015 Jan 15, 9:32
Eric Lawrence @ericlaw :
A nice look at HTTP/2 in practice, including use of data frame padding to attempt to thwart datalength-leak attacks. http://blog.httpwatch.com/2015/01/16/a-simple-performance-comparison-of-https-spdy-and-http2/ …
PermalinkComments

Retweet of Jordan_Morris

2014 Nov 30, 9:29
You know who hates Cyber Monday? Cyber Garfield.
PermalinkComments

Retweet of TheBigEasyofOz

2014 Aug 12, 7:15
Mathematically speaking, any two ducks are already in a row. In order to get your ducks in a row, own exactly two ducks.
PermalinkComments

Retweet of mattpodwysocki

2013 Oct 24, 1:00
OH: "take me down to concurrency city where green pretty is grass the girls the and are"
PermalinkComments

Image Error Level Analysis with HTML5

2012 Apr 16, 1:59

Javascript tool says if a photo is shopped. It can tell by looking at the pixels. Seriously. Links to cool presentation on the theory behind the algorithm behind the tool: http://www.wired.com/images_blogs/threatlevel/files/bh-usa-07-krawetz.pdf

PermalinkCommentstechnical javascript jpeg photoshop

PowerShell Scanning Script

2009 Jun 27, 3:42

I've hooked up the printer/scanner to the Media Center PC since I leave that on all the time anyway so we can have a networked printer. I wanted to hook up the scanner in a somewhat similar fashion but I didn't want to install HP's software (other than the drivers of course). So I've written my own script for scanning in PowerShell that does the following:

  1. Scans using the Windows Image Acquisition APIs via COM
  2. Runs OCR on the image using Microsoft Office Document Imaging via COM (which may already be on your PC if you have Office installed)
  3. Converts the image to JPEG using .NET Image APIs
  4. Stores the OCR text into the EXIF comment field using .NET Image APIs (which means Windows Search can index the image by the text in the image)
  5. Moves the image to the public share

Here's the actual code from my scan.ps1 file:

param([Switch] $ShowProgress, [switch] $OpenCompletedResult)

$filePathTemplate = "C:\users\public\pictures\scanned\scan {0} {1}.{2}";
$time = get-date -uformat "%Y-%m-%d";

[void]([reflection.assembly]::loadfile( "C:\Windows\Microsoft.NET\Framework\v2.0.50727\System.Drawing.dll"))

$deviceManager = new-object -ComObject WIA.DeviceManager
$device = $deviceManager.DeviceInfos.Item(1).Connect();

foreach ($item in $device.Items) {
        $fileIdx = 0;
        while (test-path ($filePathTemplate -f $time,$fileIdx,"*")) {
                [void](++$fileIdx);
        }

        if ($ShowProgress) { "Scanning..." }

        $image = $item.Transfer();
        $fileName = ($filePathTemplate -f $time,$fileIdx,$image.FileExtension);
        $image.SaveFile($fileName);
        clear-variable image

        if ($ShowProgress) { "Running OCR..." }

        $modiDocument = new-object -comobject modi.document;
        $modiDocument.Create($fileName);
        $modiDocument.OCR();
        if ($modiDocument.Images.Count -gt 0) {
                $ocrText = $modiDocument.Images.Item(0).Layout.Text.ToString().Trim();
                $modiDocument.Close();
                clear-variable modiDocument

                if (!($ocrText.Equals(""))) {
                        $fileAsImage = New-Object -TypeName system.drawing.bitmap -ArgumentList $fileName
                        if (!($fileName.EndsWith(".jpg") -or $fileName.EndsWith(".jpeg"))) {
                                if ($ShowProgress) { "Converting to JPEG..." }

                                $newFileName = ($filePathTemplate -f $time,$fileIdx,"jpg");
                                $fileAsImage.Save($newFileName, [System.Drawing.Imaging.ImageFormat]::Jpeg);
                                $fileAsImage.Dispose();
                                del $fileName;

                                $fileAsImage = New-Object -TypeName system.drawing.bitmap -ArgumentList $newFileName 
                                $fileName = $newFileName
                        }

                        if ($ShowProgress) { "Saving OCR Text..." }

                        $property = $fileAsImage.PropertyItems[0];
                        $property.Id = 40092;
                        $property.Type = 1;
                        $property.Value = [system.text.encoding]::Unicode.GetBytes($ocrText);
                        $property.Len = $property.Value.Count;
                        $fileAsImage.SetPropertyItem($property);
                        $fileAsImage.Save(($fileName + ".new"));
                        $fileAsImage.Dispose();
                        del $fileName;
                        ren ($fileName + ".new") $fileName
                }
        }
        else {
                $modiDocument.Close();
                clear-variable modiDocument
        }

        if ($ShowProgress) { "Done." }

        if ($OpenCompletedResult) {
                . $fileName;
        }
        else {
                $result = dir $fileName;
                $result | add-member -membertype noteproperty -name OCRText -value $ocrText
                $result
        }
}

I ran into a few issues:

PermalinkCommentstechnical scanner ocr .net modi powershell office wia
Older EntriesNewer Entries Creative Commons License Some rights reserved.