Commit Graph

17 Commits

Author SHA1 Message Date
Stefan Weil
df36c85f26 opencl: Remove more unused code
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2017-05-19 10:11:14 +02:00
Stefan Weil
bf9160cede opencl: Remove unused function pixConvertRGBToGray
Remove also the related OpenCL kernel code kernel_RGBToGray.

Signed-off-by: Stefan Weil <sw@weilnetz.de>
2017-04-26 07:55:54 +02:00
Stefan Weil
4897796d57 Replace reserved identifiers used in #define guards header files
Use macro names as suggested by the Google C++ Style Guide
(https://google.github.io/styleguide/cppguide.html#The__define_Guard).

Signed-off-by: Stefan Weil <sw@weilnetz.de>
2016-12-04 15:43:03 +01:00
Ray Smith
53003f9074 Formatting changes from clang_tidy on latest pull 2016-11-30 15:44:25 -08:00
Stefan Weil
ba6961e0f4 opencl: Fix OpenCL kernel code assertion for newer versions
With Debian package beignet-opencl-icd 1.2.1-1, Tesseract + OpenCL fails:

[DS] Profile file not available (tesseract_opencl_profile_devices.dat); performing profiling.

[DS] Device: "Intel(R) HD Graphics IvyBridge M GT2" (OpenCL) evaluation...
ASSERTION FAILED: sel.hasDoubleType()
  at file /home/geier/beignet/backend/src/backend/gen_insn_selection.cpp, function void gbe::ConvertInstructionPattern::convertDoubleToSmallInts(gbe::Selection::Opaque&, const gbe::ir::ConvertInstruction&, bool&) const, line 5269
Trace/breakpoint trap

Using a pure float expression (instead of double) fixes this issue.

Signed-off-by: Stefan Weil <sw@weilnetz.de>
2016-11-25 17:41:30 +01:00
Stefan Weil
786b482ef8 opencl: Format OpenCL kernel code
* Remove some empty lines to get a more uniform code
* Fix #endif handling at end of file

Signed-off-by: Stefan Weil <sw@weilnetz.de>
2016-11-25 17:39:06 +01:00
Stefan Weil
0020fbc0bd opencl: Clean whitespace issues in OpenCL kernel code
* Remove whitespace at line endings
* Replace tabs by spaces

Signed-off-by: Stefan Weil <sw@weilnetz.de>
2016-11-25 17:36:05 +01:00
Ray Smith
5913d7344f Added missing license headers 2016-11-18 15:53:11 -08:00
Ray Smith
2c837dffc3 Result of clang tidy on recent merge 2016-11-07 10:46:33 -08:00
Wootton, Michael
f46dfdc29d Fix a padding problem in ThresholdRectToPixOCL 2016-10-27 22:26:39 +02:00
zdenop
0497dc0e3e Merge pull request #17 from tesseract-ocr/gcode_issue1351
Issue 1351: OpenCL build - kernel_ThresholdRectToPix() not accounting for padding bits in the output pix?!
2016-08-29 17:28:42 +02:00
Stefan Weil
a21621bc4f opencl: Fix typos in comments and strings
All of them were found by codespell.

Signed-off-by: Stefan Weil <sw@weilnetz.de>
2015-11-04 21:58:42 +01:00
gargrahul
5c6a57b727 Fixes for OpenCL issues reported on Apple Mac. Still get -54 on Apple Mac while running on OpenCL CPU, however it is ignored now. 2015-08-24 15:57:18 +05:30
zhivko.tabakov@gmail.com
07be522e43 Issue 1351: OpenCL build - kernel_ThresholdRectToPix() not accounting for padding bits in the output pix?!
https://code.google.com/p/tesseract-ocr/issues/detail?id=1351

What steps will reproduce the problem?
1.Use tesseract build with OpenCL.
2.Pass full color image with width which is not multiple of 32.
3.Recognition is way too slow and does not recognize anything.
I read the article on http://www.sk-spell.sk.cx/tesseract-meets-the-opencl-first-test and decided to give OCL a try. The initial result was as per point 3 above. After some debugging I figured the problem is that the OCL version of threshold rect generation does not account for padding bits in the output pix lines. To prove my discovery I made a quick fix in oclkernels.h replacing the definition of kernel_ThresholdRectToPix

Just a reminder: it is necessary to force OCL kernel recompilation after changing this source (e.g. delete “kernel - <device>.bin” from the exec folder).
The fix is working but I am not sure about it since the original source apparently works for other people (as per the article). If I am right the OS/GPU are irrelevant since the bug is algorithmic, but mine are Windows/AMD. Also similar fix is applicable to kernel_ThresholdRectToPix_OneChan(), but there the input array might have some padding bytes as well, so its indexing will need further adjustments. I can come with some prove/fix for it either - I have not played with it yet.
Disclaimer: I have no prior experience with image processing and tesseract source or with GPU computing and OpenCL (but please do explain if I am wrong).
2015-05-13 21:23:23 +01:00
theraysmith@gmail.com
fec09faab9 Some formatting changes only to make it a bit more consistent with the rest of the code
git-svn-id: https://tesseract-ocr.googlecode.com/svn/trunk@991 d0cd1f9f-072b-0410-8dd7-cf729c803f20
2014-01-17 18:51:27 +00:00
rajesh.katikam@gmail.com
b8d7a1d139 Fixed all the crashes observed on 24 bit and 8 bit images.
git-svn-id: https://tesseract-ocr.googlecode.com/svn/trunk@919 d0cd1f9f-072b-0410-8dd7-cf729c803f20
2013-12-10 10:52:54 +00:00
rajesh.katikam@gmail.com
983aaabaae Initial version of OpenCL support added.
git-svn-id: https://tesseract-ocr.googlecode.com/svn/trunk@909 d0cd1f9f-072b-0410-8dd7-cf729c803f20
2013-11-11 17:43:13 +00:00