srowen
65f4f7c1c6
Fix an (old?) compile error
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@997 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-06-26 19:03:04 +00:00
dswitkin
167197ec7a
Refactored the MonochromeBitmapSource class hierarchy into LuminanceSource, Binarizer, and BinaryBitmap classes. The unit tests pass and I believe the change is complete, but there are some clients like J2ME and Bug that I can't build.
...
This change will allow new thresholding algorithms to be developed and tested, as well as implemented per platform if needed (e.g. in JNI on Android). It should also perform better when multiple 2D Readers are installed, because the underlying image will only be converted to 1 bit once. It also allows some platforms to return luminance data without a copy.
The current state of this checkin is to use the old black point algorithm, which now lives in GlobalHistogramBinarizer. This will be our benchmark and fallback for slower platforms. Going forward we will begin to use LocalBlockBinarizer as I shake out the edge cases and tune it for performance. Currently it is unused.
IMPORTANT: I have temporarily included three methods from MonochromeBitmapSource at the end of BinaryBitmap as a way to make this change in stages. They are deprecated and will be removed soon. All of the Reader classes will need to change the way they examine 1 bit pixels to use the new getBlackRow() and getBlackMatrix() calls.
git-svn-id: https://zxing.googlecode.com/svn/trunk@993 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-06-26 17:49:45 +00:00
dswitkin
e19e9a83f6
I moved a chunk of the histogram/black point code out of BaseMonochromeBitmapSource and into BlackPointEstimator which makes a lot more sense. Unfortunately I had to expose three new methods and touch a bunch of files. But I did manage to reuse an array on subsequent calls, which was being allocated on every row scanned, so that might be a bit faster. It will also be easier to convert this code to JNI in the future if we want to, and/or do more advanced thresholding.
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@945 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-05-21 19:56:25 +00:00
srowen
ad30e12985
Workaround for NPE on some Nokias from webblaz...
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@916 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-04-23 07:01:00 +00:00
srowen
64686b9fb1
Slightly smarter version of last change
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@891 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-03-12 21:10:53 +00:00
srowen
85507c3b5d
Try to do a better job of understanding if the phone supports video capture, and what formats, to provide better errors when it won't work
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@889 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-03-11 21:43:04 +00:00
dswitkin
d9498fdc4e
Removed getWidth() and getHeight() which I added by mistake. They are already present on the base class.
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@876 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-03-06 19:06:06 +00:00
dswitkin
c1bc060065
Changed the order of the BaseMonochromeBitmapSource constructor arguments to be width, height to match the rest of the codebase, and added two apparently missing methods to the J2ME subclass, although I can't test it.
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@874 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-03-06 16:52:35 +00:00
srowen
f2a9165b7c
Refactored width/height values into superclass and enabled construction of RGBMonochromeBitmapSource from a Bitmap
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@846 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-02-09 21:25:45 +00:00
srowen
07db37e997
Issue 141 -- add flash control for JSR 234 phones
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@839 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-02-03 10:15:23 +00:00
srowen
270edc5785
Commit Simon's changes for Issue 134
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@838 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-02-01 11:44:56 +00:00
srowen
d1cae5a9b2
Committed Simon's splash screen for Issue 130
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@833 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-01-30 16:04:03 +00:00
srowen
e7f4699037
Issue 131: reuse Alert objects
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@829 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-01-20 23:41:10 +00:00
srowen
6a9910a9b2
Improve handling of MultimediaManager to make it a bit easier to make a 'basic' build
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@822 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-01-10 14:05:37 +00:00
srowen
131cfe4c5c
More reckless refactoring and code style tweaks -- mostly adding braces around conditional/loops, and using @Override
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@784 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-12-11 23:34:49 +00:00
srowen
b300a0a4b4
Reduce alert timeout in J2ME client to 5 seconds from forever
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@760 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-25 21:14:55 +00:00
srowen
62d9959a3c
Remove my old email address from files. Might as well save spammers the trouble.
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@706 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-15 00:07:25 +00:00
srowen
e6e3472471
Renamed UPC result type to Product, and introduced an idea of 'product ID' and 'normalized product ID' to account for UPC-E, where the actual visible ID is different from what we may want to search for as a key. Updated clients to use this too.
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@668 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-04 12:08:19 +00:00
dswitkin
8671371c59
Did a big refactoring on the MonochromeBitmapSource. I removed all the caching luminance calls and converted them to getting luminance data on demand. This saved another 33,000 function calls per rejected scan, good for another 15 ms savings. I also moved the luminance calls to BaseMonochromeBitmapSource and made them protected, to indicate that the decoders shouldn't use them.
...
Overall the recent optimizations took one rejected scan from 307 to 135 ms, which is definitely noticeable.
WARNING: I am not able to build the Bug or J2ME clients, but I believe they are correct.
git-svn-id: https://zxing.googlecode.com/svn/trunk@656 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-10-30 18:44:10 +00:00
srowen
6f6da9a04c
moved ProGuard optimization into Android build file since it's the only way to fully optimize the final build product (inlining of key methods). Also always dump proguard results.
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@649 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-10-29 15:42:22 +00:00
srowen
a1deb27f46
Going back to old approach of using JSR-234 directly, then compiling with different code to produce a non-JSR-234 version. This approach isn't working on some phones -- including JSR-234 phones.
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@641 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-10-26 13:29:46 +00:00
srowen
96f6428eea
Add column caching to MonochromeBitmapSources and use it to improve Data Matrix speed
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@631 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-10-22 08:43:56 +00:00
srowen
09ce5db11d
Workaround (I think) for bizarre array corruption problem on Sun WTK and some SE phones
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@619 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-10-15 11:29:22 +00:00
srowen
6f8a5f49ca
Added notes about how to comment out anything that might possibly lead to JSR-234 problems.
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@597 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-10-04 10:11:19 +00:00
srowen
9e65557e47
Another light hack attempt to work around Issue 70
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@541 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-07-31 19:21:34 +00:00
srowen
3ab723c0c4
ISSUE 70: Catch NoClassDefFoundError too
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@540 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-07-31 14:24:13 +00:00
srowen
11e60cd6e5
Small thread-safety correctness fix which may not matter in J2ME: "done" field should be volatile so that changes from other threads are definitely seen.
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@511 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-07-10 19:59:46 +00:00
srowen
45ba99787e
Try looking up multimedia controls under alternate names to potentially improve interoperability
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@500 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-07-07 16:19:04 +00:00
srowen
aa65741586
More refactoring of parsed results / result parsers; added basic vCard support
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@487 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-06-27 17:50:47 +00:00
srowen
011e6e9cee
Big refactoring of ParsedResult: now split into ResultParser and ParsedResult classes, per Christian's suggestion. This unifies the parsed results that are produced from various input, simplifying client handling of different types.
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@482 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-06-26 19:49:38 +00:00
srowen
7780ada5ad
Implemented Paul's solution to the basic/regular build problem -- a sort of pseudo-reflection approach that works in J2ME. Now we have only a build target, not separate products for the basic version.
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@481 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-06-26 15:35:39 +00:00
srowen
f652a4b100
Remove level="9" here (oops) and add a dump target for debugging
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@480 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-06-25 19:40:13 +00:00
srowen
e0db8f9271
Standardize and update all copyright statements to name "ZXing authors" as suggested by open-source team to correctly attribute copyright in a project with contributions from several sources.
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@455 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-06-19 20:56:24 +00:00
srowen
6effdd4bd0
Renamed core OSGi bundle to "ZXing"; removed "level=" attribute on <jar> tasks since it singlehandly introduces a depence on Ant 1.7 and doesn't buy much. OS X for example does not ship with Ant 1.7 yet.
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@437 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-06-18 17:40:14 +00:00
srowen
20df62a8af
Made this more like RGBMonochromBitmapSource, caching a row instead of the whole image
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@425 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-06-12 16:29:04 +00:00
srowen
31b8b3d226
Small tweaks on top of Daniel's excellent refactoring
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@420 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-06-12 12:51:26 +00:00
dswitkin
9adb83bbd3
Refactored the MonochromeBitmapSource hierarchy to share a great deal of code and shrink the derived classes considerably.
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@418 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-06-11 23:52:35 +00:00
srowen
3140b4abdb
Add sharpening filter to this implementation too
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@415 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-06-11 18:12:41 +00:00
srowen
3a5bed7681
SnapshotThread now Runnable instead of a Thread, to dodge an odd override problem with stop() method
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@403 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-05-27 17:51:46 +00:00
srowen
a73fc5919a
Added SMSTO support, added subject/body param support in mailto:, improved handling of mailto: and tel: URIs
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@402 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-05-23 22:40:13 +00:00
srowen
635d904283
Many more little tweaks from IntelliJ inspections
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@382 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-05-02 19:18:14 +00:00
srowen
188c7fbecb
Added preliminary support for MobileTag formats; not enabled yet.
...
Added "sms:" URI support.
git-svn-id: https://zxing.googlecode.com/svn/trunk@380 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-05-02 18:39:03 +00:00
dswitkin
0b7bface5b
Made sure the BitmapSource subclasses do not reuse a BitArray which is too small.
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@355 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-04-10 20:57:37 +00:00
srowen
93db610970
Made the RGB to luminance approximation/optimization a little faster -- one less shift
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@327 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-03-31 19:04:38 +00:00
srowen
7de539a67c
biasTowardsWhite was, embarassingly, not accomplishing anything mathematically. It proved to not have much value so has been removed, to simplify the code.
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@313 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-03-26 14:42:33 +00:00
srowen
c32827af04
More aggressive inlining, to inline some key methods like BitArray.get(), resulting in significant performance boost
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@311 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-03-25 18:23:49 +00:00
srowen
7813847052
"Regular" version now attempts to set desired camera exposure settings
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@310 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-03-25 17:03:15 +00:00
srowen
b88df41dca
More aggressive ProGuard optimization
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@307 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-03-21 12:46:00 +00:00
srowen
14a9eb7d20
Fixed bug in rotation code for BufferedImageMonochromeBitmapSource; fixed "SKIP_N_BARCODES" behavior to ignore barcodes already found.
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@297 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-03-19 17:09:27 +00:00
srowen
cb4408f1f6
Removed unneeded 'keep' args to ProGuard
...
git-svn-id: https://zxing.googlecode.com/svn/trunk@295 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-03-18 17:06:21 +00:00