Commit Graph

167 Commits

Author SHA1 Message Date
berak
089aac61f3 imgcodecs: fix 4 reading channel bmp images 2017-10-01 15:32:55 +02:00
blendin
c58152d94b Fix out of bounds write 2017-09-26 23:04:01 -07:00
Alexander Alekhin
08b5dc64af imgcodecs(tiff): drop legacy code
Drop code under *undefined* HAVE_TIFF
(violates several policies, like a way to turn off tiff support)
2017-09-24 22:36:17 +00:00
Maksim Shabunin
248e2c7d47 Fixed some issues found by static analysis 2017-09-08 12:22:12 +03:00
saskatchewancatch
4832c24ef7 Allow TIFF min=white PHOTOMETRIC interpretation images to be read unchanged 2017-09-05 21:43:33 -06:00
Alexander Alekhin
8f05126619 imgcodecs: fix regression 9376 2017-08-29 13:31:26 +03:00
Alexander Alekhin
91f680aff6 Merge pull request #9448 from alalek:issue_9443 2017-08-24 16:05:08 +00:00
Alexander Alekhin
cc5da83474 Merge pull request #9252 from jbms:fix/tiff-in-memory 2017-08-24 15:33:48 +00:00
Alexander Alekhin
c515e878ab build: eliminate Win32 warnings 2017-08-24 16:07:12 +03:00
Alexander Alekhin
aacae20657 imgcodesc: fix code problems with integer overflow / address arithmetic / UB 2017-08-23 17:27:27 +03:00
Alexander Alekhin
999f41fb4f imgcodecs: refactoring, improve code quality 2017-08-16 18:56:41 +03:00
Jeremy Maitin-Shepard
350d483a70 grfmt_tiff: support in-memory TIFF encoding and decoding
Previously, only file-based encoding and decoding were supported with
the libtiff library, leading to the possible use of temporary files.

This fixes issue #8483.
2017-07-31 10:22:11 -07:00
Jeremy Maitin-Shepard
2be955a0ef loadsave: check for errors when using temp file
Previously, the return value of fwrite and fclose were not properly
checked, leading to possible silent truncation of the data if writing
failed, e.g. due to lack of disk space.

Fixes issue #9251.
2017-07-31 09:02:42 -07:00
Alexander Alekhin
602f047fe8 build: replace WIN32 => _WIN32 2017-07-25 13:30:48 +03:00
Maksim Shabunin
e0393f8557 Fixed some issues found by static analysis (4th round) 2017-06-30 12:26:53 +03:00
Maksim Shabunin
a769d69a9d Fixed several issues found by static analysis 2017-06-28 18:06:18 +03:00
Maksim Shabunin
32d4af36e2 Fixing some static analysis issues 2017-06-27 14:30:26 +03:00
Alexander Alekhin
006966e629 trace: initial support for code trace 2017-06-26 17:07:13 +03:00
Alexander Alekhin
a7e80f7c10 Merge pull request #8645 from brian-armstrong-discord:bugfix_inmemory_exif 2017-04-25 10:32:00 +00:00
Brian Armstrong
40dc0bcd63 fix ByteStreamBuffer 2017-04-24 18:07:47 -07:00
berak
cbda9b332b imgcodecs: fix webp IMREAD_GRAYSCALE loading 2017-04-24 11:56:23 +02:00
brian-armstrong-discord
9e054d3880 Merge pull request #8492 from brian-armstrong-discord:exif_inmemory
autorotate in-memory jpegs (#8492)

* autorotate in-memory jpegs

* correct indentation (4 spaces)

* imgcodecs: don't apply EXIF rotation for unloaded images

* videoio: don't try to rotate MJPEG stream

* imgcodecs: ByteStreamBuffer::seekoff support all seek "dir"

* imgcodecs: fix condition: "off == egptr() - eback()" is valid offset
2017-04-14 23:12:07 +03:00
Chaoshuai Lu
de7018539d Fix UIImageToMat method by taking image scale information into account 2017-03-22 22:33:13 -07:00
Chaoshuai Lu
874fb7ae78 Fix MatToUIImage method crash when the step is not equal to cols * elemSize() 2017-03-22 22:04:27 -07:00
Ilija Puaca
1b842c4762 Updated version of libwebp to 0.6.0. Removed iOS from build exceptions for libwebp 2017-02-09 23:35:27 +01:00
StevenPuttemans
22d8a81a57 enable processing of 16, 32 and 64 bit 4 channel data using GDAL1.2 2017-02-07 15:51:45 +01:00
guoxuedong
e69253a4fb Update exif.cpp
ExifReader::getExif may enter infinite loop with jpeg image which have no EOI.
For example, bytesToSkip may be set to 0 and fseek seems like fseek(f, -2 , SEEK_CUR) for image that end with RST7(FF D7) instead of EOI.
2016-11-24 11:08:11 +08:00
Arkadiusz Raj
40778fa30a Change name to minimize confusion 2016-11-10 15:31:34 +01:00
Arkadiusz Raj
4a9c84c570 Add static to local function 2016-11-10 15:04:28 +01:00
Arkadiusz Raj
f893ee5cec Added IMREAD_IGNORE_ORIENTATION flag 2016-11-09 18:09:22 +01:00
ArkadiuszRaj
797030aa90 Solution to issue #7408 2016-10-07 21:29:08 +02:00
Maksim Shabunin
48af5e5579 Merge pull request #7202 from valeriyvan:fixUIImageToMat 2016-09-06 20:45:19 +00:00
Alexander Alekhin
a92aed45a4 Merge pull request #7064 from DmtKats:pam 2016-09-06 16:56:27 +00:00
Dimitrios Katsaros
4e513a3346 Imgcodecs: Fixed a bug with checkSignature in GdalDecoder
In cases where the signaure string contains a terminating character,
the std::string member function size returns a smaller value than the
allocated string. In these cases, if you then try to use substr,
you will get an out_of_range exception. This patch remedies the problem.
2016-09-06 15:47:22 +02:00
Dimitrios Katsaros
6172803012 imgcodecs: Implementation of PAM encoder/decoder
This patch implements the PAM image format as defined at:
http://netpbm.sourceforge.net/doc/pam.html

The PAM format provides a generic means for storing 2 dimensional information.
This is useful for opencv since there are cases where data gets translated into
non standardized formats, which makes it difficult to store and load this information.
2016-09-06 15:47:22 +02:00
Valeriy Van
464d289fa9 Gets rid of magic constant 2016-08-30 23:22:49 +03:00
Alexander Alekhin
5383a625a7 fix Win build, change default WINNT macro to WinXP
Returning to Win2k value is possible via this CMake option:

    cmake -DOPENCV_EXTRA_FLAGS="/D_WIN32_WINNT=0x0500" ...
2016-08-25 16:21:52 +03:00
Morrison
ca318e7099 handle images with alpha better
UIImages with alpha were ending up with garbage pixels in background (random memory values).  Need to initialize matrix pixels before drawing UIImage with alpha on it.

Note: didn’t fix Grayscale image with alpha stripping alpha in UIImage -> Mat conversion.
2016-08-16 15:10:48 -07:00
Patrick Spettel
84e1712659 Fix temporary file removal in imdecode for tiff
The TiffDecoder keeps an open file handle.
As a consequence the file cannot be removed
before the TiffDecoder closes the file.
2016-08-16 10:56:00 +02:00
Vadim Pisarevsky
1e17ffe9ac Merge pull request #6839 from thierrylamarre:better_png_transparency 2016-07-18 18:24:34 +00:00
Vadim Pisarevsky
b6f21a6cac Merge pull request #6813 from mshabunin:gdcm-cmake-search 2016-07-18 16:00:43 +00:00
thierry
ea911d34c6 remove 2-channel png encoder/decoder support 2016-07-14 14:58:05 +02:00
thierry
d40e46bc9b Merge branch 'master' into better_png_transparency
* master: (468 commits)
  added suppression for TBB valgrind issue
  update CUDA architecture flags initialization
  increase minimal supported CUDA toolkit to 6.5
  check the CPU flag correctly
  opencv_visualization: check cmdline args
  provide better error messages
  stop search of markers in Exif reader to prevent infinite loop
  Fix calibration fail on python with CALIB_THIN_PRISM_MODEL flag
  clarify CUDA arithm operations usage with mask
  fixed empty image condition in resize
  fixed memory leak in flann tests
  fisheye: add CALIB_FIX_PRINCIPAL_POINT
  get/put: more type-safety and code unification using templates
  py_tutorials: fix cv2.findContours return val
  imgproc: speed up threshold of 64F version using NEON and SSE   * use NEON under aarch64 only   * check 64F version correctly
  bigdata: add test, resolve split/merge issue
  Improved Carotene library linear resize evaluation precision and enabled it as HAL implementation.
  persistence: fixing crash with space-only values
  Removed unnecessary check for Android API level and unused flags.
  Fix for median blur of 2-channel images
  ...
2016-07-14 14:05:16 +02:00
Ilya Lavrenov
91d8405e52 stop search of markers in Exif reader to prevent infinite loop 2016-07-12 16:01:12 +03:00
Maksim Shabunin
f3bd508e6d GDCM: several improvements
- fixed width and height order
- removed unused methods
- simplified signature matching
- rewrote pixel format matching in more compact form
- added dimensions number check (only 2 is allowed)
- added target buffer size check
- added debug messages in all failing points
2016-07-08 16:08:55 +03:00
Maksim Shabunin
0fd0acf2e3 GDCM: modified compilation scheme
- renamed source files
- guard the contents - always include
2016-07-08 16:08:55 +03:00
look4pritam
6f22f49c02 Grassroots DiCoM i.e. GDCM based DICOM image reader is added. 2016-07-08 16:08:55 +03:00
Suleyman TURKMEN
1b22783d46 Update grfmt_png.cpp 2016-06-26 20:03:03 +03:00
Maksim Shabunin
c3d1f94ee6 Merge pull request #6446 from kevin-coder:bugfix_6445 2016-05-18 09:40:26 +00:00
Alexander Alekhin
67a734ce73 Merge branch '2.4' into master
Commits:
67fe57a add fixed video
db0ae2c Restore 2.4 source branch for bug fix 6317.
97ac59c Fix a memory leak indirectly caused by cvDestroyWindow
eb40afa Add a workaround for FFmpeg's color conversion accessing past the end of the buffer
421fcf9 Rearrange CvVideoWriter_FFMPEG::writeFrame for better readability
912592d Remove "INSTALL_NAME_DIR lib" target property
bb1c2d7 fix bug on border at pyrUp
2016-04-21 20:15:08 +03:00
Zhenqing, Hu
94a9e16943 Fix bug 6445
Root cause: when calling imread to read the pgm file, when returning with success reading file, the destructor will free the resource which used by memcpy, but in the code, the resource calculation was not correct, therefore, it will cause memory corruption during resource free.
2016-04-21 14:39:55 +08:00
Suleyman TURKMEN
98239664f6 fix for writing 16-bit jpeg2000 2016-04-17 00:37:28 +03:00
Robbert Klarenbeek
81b11ee463 Replace deprecated malloc.h 2016-03-16 11:37:27 +01:00
Maksim Shabunin
3a92371b60 EXIF reader: fixed file descriptor leak in case of broken tags 2016-02-25 12:19:11 +03:00
Maksim Shabunin
a54870aace Added filename emptyness check to the Exif reader, fixes 6120 2016-02-16 11:37:36 +03:00
Maksim Shabunin
112aa49104 ExifReader::getFormat : check buffer length before accessing, fixes 6059 2016-02-08 17:14:55 +03:00
thierry
bdb9cf4d47 fix inversed grayscale conditional 2016-01-18 17:56:26 +01:00
thierry
1b5352688f better png transparency handling 2016-01-18 16:10:02 +01:00
Maksim Shabunin
4a294775da Coverity: fixed uninitialized field in ExifReader 2015-12-09 14:25:08 +03:00
Maksim Shabunin
a921761d18 Coverity: memory leak in OpenEXR reader 2015-12-09 14:25:08 +03:00
Maksim Shabunin
fc641e2bde Coverity: uninitialized values in ExifEntry_t structure 2015-12-09 14:17:46 +03:00
comdiv
81c746c2a8 32bit BITFIELDS compresion codec support #5707 Fixed
wsfixed
2015-11-25 00:03:35 +05:00
jiakai
933dfed4b8 check offset in ExifReader::getString 2015-11-11 20:17:24 +08:00
jiakai
80df9ddedb check for exifSize 2015-11-05 18:32:51 +08:00
jiakai
1260060d7d check boundary in ExifReader 2015-11-05 17:58:35 +08:00
Vadim Pisarevsky
a69fd6029a Merge pull request #5512 from edgarriba:gdal_lan 2015-11-02 11:53:08 +00:00
edgarriba
f50858dd24 set GA_ReadOnly flag again since test error 2015-11-01 12:07:05 +01:00
edgarriba
a242556b1d Merge branch 'master' of https://github.com/Itseez/opencv into gdal_lan
Conflicts:
	modules/imgcodecs/include/opencv2/imgcodecs.hpp
2015-10-31 20:18:41 +01:00
edgarriba
decdae515b set GA_Update flag in order remove ERROR 8: band 1: Attempt to write to read only dataset inGDALRasterBand::Fill() 2015-10-31 20:11:05 +01:00
edgarriba
9ff14bc411 add support for float32 and float 64 2015-10-31 20:00:39 +01:00
Hajo Nils Krabbenhöft
a8e550f5bf Fixed crash when reading b/w tif images (fixes #5579) 2015-10-30 17:41:52 +03:00
Alexander Alekhin
8c2d712fb0 Merge pull request #5538 from micalan:JpegExif 2015-10-25 15:18:08 +00:00
micalan
0a306f8804 Camera orientation handling is added for jpeg files 2015-10-23 21:19:35 +03:00
Maksim Shabunin
ff35726fc3 Merge pull request #5432 from sturkmen72:patch-11 2015-10-22 12:24:47 +00:00
edgarriba
1e9bd59f07 load multi/hyperspectral images with using gdal 2015-10-14 09:16:04 +02:00
AlexanderStohr
0098c4b571 fix VS2010 error with type mismatch due to volatile qualifier 2015-10-13 16:15:49 +02:00
Suleyman TURKMEN
21c0acff24 Update imgcodecs.hpp 2015-10-02 14:00:24 +03:00
Suleyman TURKMEN
7c226ed7a2 adding new flags to imread to load image reduced 2015-09-28 02:00:02 +03:00
Maksim Shabunin
771af4f32d Some changes to support mingw-w64
- IPP is disabled by default when compiler is mingw (couldn't make it
work)
- fixed some warnings
- fixed some `__GNUC__` version checks (for correctness and convenience)
- removed UTF-8 BOM from hough.cpp (fixes #5253)
2015-09-01 00:59:08 +03:00
Maksim Shabunin
9e4c62967b Fixed RGBE images header parsing (fixes #4885) 2015-08-13 17:24:54 +03:00
Maksim Shabunin
14d7b38613 Fixing GCC 4.9 warnings 2015-07-22 16:12:31 +03:00
Vadim Pisarevsky
a7805301cb Merge pull request #4201 from sturkmen72:new_function_imread_reduced 2015-07-21 11:49:51 +00:00
Suleyman TURKMEN
7b7d54df68 new function imread_reduced()
by this new function we can set libjpeg "scale_denom" parameter and load jpeg images scaled 1/2 - 1/4 - 1/8
other image formats resized after loading
2015-07-19 03:53:43 +03:00
Stefan Cornelius
851f20e40c Fix processing of SunRaster images with negative maplength 2015-06-25 00:17:49 +02:00
themightyoarfish
125782c061 fixed copy-paste errors 2015-06-17 12:08:34 +02:00
themightyoarfish
d647261de2 Fixed alpha preservation when converting 4-channel Mat to UIImage 2015-06-11 14:59:57 +02:00
Andreas Stührk
3ec0e0943c TIFF loader: Allocate large enough buffer when (bpp * ncn) > 8.
Conflicts:
	modules/highgui/src/grfmt_tiff.cpp

floodfill return value removed
2015-05-24 14:06:33 +02:00
Andreas Stührk
c9481b0fd7 Don't allocate lots of memory when reading TIFFs with infinite rows per strip.
Some TIFF images consist of only one strip. The magic value 2**32-1 for the
"rows per strip" tag reflects that fact, effectively meaning "infinite".

Conflicts:
	modules/highgui/src/grfmt_tiff.cpp
	modules/highgui/test/test_grfmt.cpp

fix whitespace

fix compile error
2015-05-24 14:06:20 +02:00
Marvin Smith
ae933db526 Fixing the gdal include error that Macports seems to only mess up. 2015-05-11 20:27:50 -07:00
Ashod Nakashian
f75f2ffd48 Jpeg2k color to greyscale conversion on non-Windows is done post decoding because system libjasper segfaults when decoding color images as greyscale. 2015-04-03 21:01:45 -04:00
Eric Sommerlade
998a909705 fixed whitespace issues 2015-02-23 08:15:34 -07:00
Eric Sommerlade
a07d7a70a0 added support for uncompressed parameters to tiff image format as described here: expertland.net/question/b6o3n6p9a72341db823b48nl98m91dx8n1/detail.html 2015-02-23 06:12:42 -07:00
UQ Times
1944443d10 iOS: fix crash from overrelease in UIImageToMat
- previous pull request: https://github.com/Itseez/opencv/pull/3340
2015-02-18 13:30:08 +09:00
Maksim Shabunin
036b13ee05 Fixed GDAL loader check 2015-01-21 14:01:21 +03:00
Maksim Shabunin
1a15596f21 Fixed build warning in GDAL support module 2015-01-21 12:53:50 +03:00
Marvin Smith
9a0e038a48 Fixed compile warning from redefined macro. 2015-01-17 20:37:51 -08:00
Marvin Smith
9a1a9d9aff Updating CMake to get GDAL working again on OS X. 2015-01-17 16:59:56 -08:00
Ashod Nakashian
473964806c Added imread and imreadmulti regression tests. 2015-01-03 12:48:29 -05:00
Ashod Nakashian
61ca38103c Added imreadmulti API to read multi-paged images into a vector of Mat. 2015-01-03 00:09:35 -05:00
Ashod Nakashian
ecf359b8c9 Support for multipage decoding in BaseImageDecoder and implemented in TiffDecoder. 2015-01-03 00:09:34 -05:00