favoritas37
a649f73406
Merge branch 'master' of https://github.com/ftylitak/qzxing
2017-04-18 10:21:57 +03:00
favoritas37
e5770ffaca
resolved bug in ReedSolomon encoder. Now the encoding tests are successfull but still the images produced can not be decoded. One step closer to #10
2017-04-18 10:21:30 +03:00
favoritas37
02d8e6b6ff
fixed memory leak at DataMatrix decoding
2017-04-15 12:08:30 +03:00
favoritas37
e3152c2e3e
added const declaration at the functions that utilize CharacterSetECI instances.
2017-04-14 09:00:52 +03:00
favoritas37
572bd586c3
Removed redundant code in QZXingFilter when tryHarder is activated. When tryHarder is try, the library itself tries different angles of the image.
2017-04-14 08:54:58 +03:00
Nikolaos Ftylitakis
61fa59c7bb
Merge pull request #30 from KDAB/wip/capture-rect-yuv-nv
...
Take captureRect into account when converting YUV420P
2017-04-13 16:06:44 +03:00
favoritas37
f5914f494d
calculate byte arrays once per image and provide references instead of always copying the matrix
2017-04-11 09:52:13 +03:00
favoritas37
c46e65803c
added case to not re-conver an already greyscale pixel upon creating the greyscale byte arrays
2017-04-10 18:11:17 +03:00
favoritas37
362f87a807
removed commended code, not necessary
2017-04-10 18:10:00 +03:00
favoritas37
af6833c239
Merge branch 'master' of https://github.com/ftylitak/qzxing
2017-04-10 16:01:11 +03:00
favoritas37
9ec80e5ad4
Optimization of CameraImageWrapper, minimize memory copy and calculations. The implementation of RGB-to-Greyscale convertion that is buildin by QImage does not fit the case of the barcode images. This is why the detection rate had dropped after the commit d112bf4
. (554/1099 vs 611/1112 successful tests).
2017-04-10 16:00:41 +03:00
favoritas37
d11b51e3a5
Merge branch 'master' of https://github.com/ftylitak/qzxing
2017-04-07 17:16:43 +03:00
favoritas37
30dcf6acfc
Fixed compilation of BarcodeEncoder example. Make use of qzxing_qml CONFIG tag.
2017-04-07 17:16:15 +03:00
Nikolaos Ftylitakis
d2cf8dc3f9
Merge pull request #24 from neutrino2/master
...
fixed type mistake in ReedSolomonEncoder::encode
2017-04-05 20:28:59 +03:00
Milian Wolff
e77dcccd5f
Take captureRect into account when converting YUV420P
...
This allows us to only copy the actually required data from the source
frame into the greyscale target image. Without this patch, my desktop
machine with a camera providing YUV420 frames takes about ~25ms to
decode a single frame 1920x1080 frame using a 25% capture rect.
With the patch applied, the performance goes up drastically, and we
now only take about 17ms to decode a single frame.
The same should be done for NV12 frames, but I didn't have a device
at hand to test the code there yet.
2017-03-30 18:24:28 +02:00
Nikolaos Ftylitakis
6d945cce4f
Update README.md
...
fixed Readme file styling
2017-03-20 18:17:39 +02:00
favoritas37
6a40ab118d
Merge branch 'master' of https://github.com/ftylitak/qzxing
2017-03-20 17:24:53 +02:00
favoritas37
2207c3c248
Removed qzxing_qml tag from the defaults
...
Automatically add qzxing_qml if qzxing_multimedia tag is used
Refactorings to wrap QML dependant code in QZXING_QML scopes
update README.md to reflect the above changes
changes triggered from #26
2017-03-20 17:23:52 +02:00
favoritas37
51346e19d6
Fixed processing of RGB32 images. Fix inverted y directly at the construction of the image. Fixes issue #27 .
2017-03-20 15:11:40 +02:00
favoritas37
f581e879de
fixed compilation of QZXingLive for platforms other than Android
2017-03-16 16:26:48 +02:00
favoritas37
a69cd45ac6
added higher resolution icons in QZXingLive
2017-03-03 19:02:49 +02:00
Neutrino
7dd3489290
fixed type mistake in ReedSolomonEncoder::encode
2017-02-16 14:13:03 +08:00
favoritas37
3ee00d8cff
Merge branch 'oKcerG-register-types-qzxingcpp'
2017-01-30 09:11:25 +02:00
favoritas37
cd9fc3b029
resolving merge conflicts
2017-01-30 09:07:52 +02:00
favoritas37
29860c538c
Added example with proper handling of Android application permissions for QZXingLive triggered by #22
2017-01-29 17:54:16 +02:00
favoritas37
5ef72fa114
added license reference to the headers of the project
2017-01-27 13:50:46 +02:00
Nikolaos Ftylitakis
452054720d
Merge pull request #20 from nickdiego/fix-captureRect
...
QZXingFilter: More fixes to captureRect stuff
2017-01-23 20:18:31 +02:00
favoritas37
88012f5aa2
Updated BarcodeEncoder project. Previous implementation caused compilation error when compiled with MSVC. Also this implementation is more compact
2017-01-23 19:45:47 +02:00
favoritas37
3397ee4a2b
fixed linker error for QZXingTests when compiled with MSVC. Minor styling edits in TestCase.cpp
2017-01-23 18:05:57 +02:00
Nick Diego Yamane
815dec7252
QZXingFilter: More fixes to captureRect stuff
2017-01-22 23:43:39 -04:00
favoritas37
fe26b2112e
align file name casing to camel case for qzxing.cpp and imagehandler
2017-01-22 18:42:03 +02:00
Nikolaos Ftylitakis
154451e968
Merge pull request #18 from nickdiego/upstream-fixes
...
Fix some critical bugs in QZXingFilter
2017-01-22 17:58:23 +02:00
Nick Diego Yamane
557a52b17d
QZXingFilter: Enforce captureRect validation
...
captureRect is accessible and modifyable via QML, so that
it can take arbitrary values, what can make QZXingFilter to crash
the application.
This issue was experienced when running code similar to QZXingLive
example on an android device, where captureRect is bound based on
VideoOutput's contentRect and sourceRect, when QML Engine is
calculating layout for the pages it sets temp values to width/height
of elements (including VideoOutput) what causes captureRect to be
set to invalid values for the QZXingFilter's perspective, such
as negative values for x and y.
Signed-off-by: Nick Diego Yamane <nick.diego@gmail.com>
2017-01-19 03:22:33 -04:00
Nick Diego Yamane
2083f7a805
QZXingFilter: Fix crash when destructing QZXingFilter
...
QZXingFilterRunnable runs QFuture to perform
decoder::decodeImage() and stores it in a
class var of its owner (QZXingFilter), but
when QZXingFilter is destructed it was not canceling
that QFuture, making possible to the QFuture to try to
access filter->decoder->decodeImage() after filter's
are already destructed (dangling pointer).
Issue detected when using QZXingFilter QML Element in
an Page pushed in a StackView. When the page containing the
QZXingFilter is poped from the StackView, (by default) the
filter is unloaded/destructed, what makes the app crash
without this patch.
Signed-off-by: Nick Diego Yamane <nick.diego@gmail.com>
2017-01-19 03:22:33 -04:00
oKcerG
b3d0c8209b
Define static function to registers types in qzxing.cpp, not in qzxing.h
...
This simplifies the code for QZXingFilter (revert it to what it was before)
Also added a global include file, to include all QZXing user classes.
Reverts 5627d2fbb5
, eb6bdb41e9
, 1bae498386
& 213c4d684b
2017-01-18 16:01:18 +01:00
favoritas37
5627d2fbb5
deallocate instance of QZXing on QZXingFilter destruction. update the initialization list to match the declaration order
2017-01-17 16:35:26 +02:00
favoritas37
eb6bdb41e9
revert propert decoder of QZXingFilter that was mistakenly renamed. Allocate an instance of QZXing at the creation of QZXingFilter
2017-01-17 16:13:42 +02:00
favoritas37
54a7fc9d72
added missing includes for QDebug and QFuture.
2017-01-17 13:40:33 +02:00
favoritas37
1bae498386
properly fix compile issue by forward declaring QZXing in QZXingFilter. Had to make decoder variable as pointer in order to avoid the compiler requirement to known the exact size of the class...that had to be forward declared. Properly addresses issue #16
2017-01-17 13:37:20 +02:00
favoritas37
213c4d684b
fixes #16 . compilation error due to a forgotten include in QZXing.h
2017-01-17 13:16:36 +02:00
Nikolaos Ftylitakis
cbaef5e90f
Delete gradle.properties
...
removed unnecessary file
2017-01-16 20:04:22 +02:00
favoritas37
c48d31f523
removed unecessary file
2017-01-16 20:02:13 +02:00
favoritas37
703d79174d
Update main readme file to include the latest changes with the dependency control. Added more info for a quick introduction to the library
2017-01-16 19:58:34 +02:00
favoritas37
75eb47e8c5
fine tune the use of QZXing::registerQMLTypes to include the QZXingFilter. Update QZXingLive with the latest changes
2017-01-16 19:57:25 +02:00
favoritas37
905ee3359a
make QZXingLive aware of the Android configuration
2017-01-16 19:54:20 +02:00
favoritas37
ac2d636532
Added initial Android files
2017-01-16 19:52:44 +02:00
favoritas37
a3e71ec1e7
created qzxing_qml and qzxing_multimedia qmake CONFIG tags for QZXing.pri to allow the control of dependencies based on the needs. qzxing_qml enables QML specific parts of the library. qzxing_multimedia enables QZXingFilter which requires Qt's multimedia.
2017-01-15 20:36:41 +02:00
Nikolaos Ftylitakis
b1eaeb1960
Merge pull request #13 from KDAB/improved_qzxingfilter
...
great improvements of QZXing and QZXingLive performance provided by @milianw from KDAB!
QZXingFilter becomes integral part of QZXing library source code.
closes #5
2017-01-14 17:15:31 +02:00
Milian Wolff
594b178501
Make QZXingFilter "official" by moving it out of the example folder
...
The filter is much more performant than using the QZXing API in an
imparative way for the use-case of live-analyzing video frames in QML.
2017-01-10 13:24:55 +01:00
Milian Wolff
61508f461a
Optimize: Return the matrix reference directly instead of copying it.
...
This removes another copy of frame data, thereby improving the FPS
of the QZXingFilter example noticeably.
2017-01-10 13:17:54 +01:00