From 68ff3ceeadae4fc660e59b9cf268142421e14573 Mon Sep 17 00:00:00 2001 From: Dane Springmeyer Date: Thu, 26 Sep 2013 16:14:40 -0700 Subject: [PATCH 1/3] add color-to-alpha image-filter - closes #2023 --- CHANGELOG.md | 8 +- include/mapnik/image_filter.hpp | 71 +++++++++ include/mapnik/image_filter_grammar.hpp | 1 + include/mapnik/image_filter_types.hpp | 16 ++- src/image_filter_grammar.cpp | 10 ++ ...-to-alpha1-512-512-1.0-grid-reference.json | 136 ++++++++++++++++++ ...-to-alpha2-512-512-1.0-grid-reference.json | 136 ++++++++++++++++++ ...-to-alpha3-512-512-1.0-grid-reference.json | 136 ++++++++++++++++++ ...-to-alpha4-512-512-1.0-grid-reference.json | 136 ++++++++++++++++++ ...-to-alpha5-512-512-1.0-grid-reference.json | 136 ++++++++++++++++++ ...or-to-alpha1-512-512-1.0-agg-reference.png | Bin 0 -> 73162 bytes ...or-to-alpha1-512-512-2.0-agg-reference.png | Bin 0 -> 73162 bytes ...or-to-alpha2-512-512-1.0-agg-reference.png | Bin 0 -> 7103 bytes ...or-to-alpha2-512-512-2.0-agg-reference.png | Bin 0 -> 7103 bytes ...or-to-alpha3-512-512-1.0-agg-reference.png | Bin 0 -> 7708 bytes ...or-to-alpha3-512-512-2.0-agg-reference.png | Bin 0 -> 7708 bytes ...or-to-alpha4-512-512-1.0-agg-reference.png | Bin 0 -> 6426 bytes ...or-to-alpha4-512-512-2.0-agg-reference.png | Bin 0 -> 6426 bytes ...or-to-alpha5-512-512-1.0-agg-reference.png | Bin 0 -> 7777 bytes ...or-to-alpha5-512-512-2.0-agg-reference.png | Bin 0 -> 7777 bytes .../styles/raster-color-to-alpha1.xml | 19 +++ .../styles/raster-color-to-alpha2.xml | 20 +++ .../styles/raster-color-to-alpha3.xml | 20 +++ .../styles/raster-color-to-alpha4.xml | 27 ++++ .../styles/raster-color-to-alpha5.xml | 27 ++++ tests/visual_tests/test.py | 5 + 26 files changed, 900 insertions(+), 4 deletions(-) create mode 100644 tests/visual_tests/grids/raster-color-to-alpha1-512-512-1.0-grid-reference.json create mode 100644 tests/visual_tests/grids/raster-color-to-alpha2-512-512-1.0-grid-reference.json create mode 100644 tests/visual_tests/grids/raster-color-to-alpha3-512-512-1.0-grid-reference.json create mode 100644 tests/visual_tests/grids/raster-color-to-alpha4-512-512-1.0-grid-reference.json create mode 100644 tests/visual_tests/grids/raster-color-to-alpha5-512-512-1.0-grid-reference.json create mode 100644 tests/visual_tests/images/raster-color-to-alpha1-512-512-1.0-agg-reference.png create mode 100644 tests/visual_tests/images/raster-color-to-alpha1-512-512-2.0-agg-reference.png create mode 100644 tests/visual_tests/images/raster-color-to-alpha2-512-512-1.0-agg-reference.png create mode 100644 tests/visual_tests/images/raster-color-to-alpha2-512-512-2.0-agg-reference.png create mode 100644 tests/visual_tests/images/raster-color-to-alpha3-512-512-1.0-agg-reference.png create mode 100644 tests/visual_tests/images/raster-color-to-alpha3-512-512-2.0-agg-reference.png create mode 100644 tests/visual_tests/images/raster-color-to-alpha4-512-512-1.0-agg-reference.png create mode 100644 tests/visual_tests/images/raster-color-to-alpha4-512-512-2.0-agg-reference.png create mode 100644 tests/visual_tests/images/raster-color-to-alpha5-512-512-1.0-agg-reference.png create mode 100644 tests/visual_tests/images/raster-color-to-alpha5-512-512-2.0-agg-reference.png create mode 100644 tests/visual_tests/styles/raster-color-to-alpha1.xml create mode 100644 tests/visual_tests/styles/raster-color-to-alpha2.xml create mode 100644 tests/visual_tests/styles/raster-color-to-alpha3.xml create mode 100644 tests/visual_tests/styles/raster-color-to-alpha4.xml create mode 100644 tests/visual_tests/styles/raster-color-to-alpha5.xml diff --git a/CHANGELOG.md b/CHANGELOG.md index 561fe41c2..2d5a9a91e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,6 +14,8 @@ Released ... Summary: TODO +- Added `color-to-alpha` `image-filter` to allow for applying alpha in proportion to color similiarity (#2023) + - Added Async support to PostGIS plugin - https://github.com/mapnik/mapnik/wiki/PostGIS-Async - Fixed alpha handling bug with `comp-op:dst-over` (#1995) @@ -307,9 +309,9 @@ Released Aug 23, 2012 - Improved logging/debugging system with release logs and file redirection (https://github.com/mapnik/mapnik/wiki/Runtime-Logging) (#937 and partially #986, #467) -- GDAL: allow setting nodata value on the fly (will override value if nodata is set in data) (#1161) +- GDAL: allow setting `nodata` value on the fly (will override value if `nodata` is set in data) (#1161) -- GDAL: respect nodata for paletted/colormapped images (#1160) +- GDAL: respect `nodata` for paletted/colormapped images (#1160) - PostGIS: Added a new option called `autodetect_key_field` (by default false) that if true will trigger autodetection of the table primary key allowing for feature.id() to represent @@ -446,7 +448,7 @@ Released September 26, 2011 cannot possibly be projected into the map srs or the user wishes to control map bounds without modifying the extents of each layer. -- Support for NODATA values with grey and rgb images in GDAL plugin (#727) +- Support for `nodata` values with grey and rgb images in GDAL plugin (#727) - Print warning if invalid XML property names are used (#110) diff --git a/include/mapnik/image_filter.hpp b/include/mapnik/image_filter.hpp index 4d41ea4a6..b871f8c10 100644 --- a/include/mapnik/image_filter.hpp +++ b/include/mapnik/image_filter.hpp @@ -406,6 +406,77 @@ void apply_filter(Src & src, agg_stack_blur const& op) agg::stack_blur_rgba32(pixf,op.rx,op.ry); } +inline double channel_delta(double source, double match) +{ + if (source > match) return (source - match) / (1.0 - match); + if (source < match) return (match - source) / match; + return (source - match); +} + +inline uint8_t apply_alpha_shift(double source, double match, double alpha) +{ + source = (((source - match) / alpha) + match) * alpha; + return static_cast(std::floor((source*255.0)+.5)); +} + +template +void apply_filter(Src & src, color_to_alpha const& op) +{ + using namespace boost::gil; + rgba8_view_t src_view = rgba8_view(src); + double cr = static_cast(op.color.red())/255.0; + double cg = static_cast(op.color.green())/255.0; + double cb = static_cast(op.color.blue())/255.0; + for (int y=0; y(r)/255.0; + double sg = static_cast(g)/255.0; + double sb = static_cast(b)/255.0; + double sa = static_cast(a)/255.0; + // demultiply + if (sa <= 0.0) + { + r = g = b = 0; + continue; + } + else + { + sr /= sa; + sg /= sa; + sb /= sa; + } + // get that maximum color difference + double xa = std::max(channel_delta(sr,cr),std::max(channel_delta(sg,cg),channel_delta(sb,cb))); + if (xa > 0) + { + // apply difference to each channel, returning premultiplied + // TODO - experiment with difference in hsl color space + r = apply_alpha_shift(sr,cr,xa); + g = apply_alpha_shift(sg,cg,xa); + b = apply_alpha_shift(sb,cb,xa); + // combine new alpha with original + xa *= sa; + a = static_cast(std::floor((xa*255.0)+.5)); + // all color values must be <= alpha + if (r>a) r=a; + if (g>a) g=a; + if (b>a) b=a; + } + else + { + r = g = b = a = 0; + } + } + } +} + template void apply_filter(Src & src, colorize_alpha const& op) { diff --git a/include/mapnik/image_filter_grammar.hpp b/include/mapnik/image_filter_grammar.hpp index 26156fbf1..18aa765f4 100644 --- a/include/mapnik/image_filter_grammar.hpp +++ b/include/mapnik/image_filter_grammar.hpp @@ -75,6 +75,7 @@ struct image_filter_grammar : css_color_grammar css_color_; qi::rule color_stop_offset; phoenix::function percent_offset; + qi::rule, void(ContType&), qi::ascii::space_type> color_to_alpha_filter; }; } diff --git a/include/mapnik/image_filter_types.hpp b/include/mapnik/image_filter_types.hpp index c3f0d54e9..9ff5ab516 100644 --- a/include/mapnik/image_filter_types.hpp +++ b/include/mapnik/image_filter_types.hpp @@ -59,6 +59,13 @@ struct agg_stack_blur unsigned ry; }; +struct color_to_alpha +{ + color_to_alpha(mapnik::color const& c) + : color(c) {} + mapnik::color color; +}; + struct scale_hsla { scale_hsla(double _h0, double _h1, @@ -132,7 +139,8 @@ typedef boost::variant filter_type; + filter::colorize_alpha, + filter::color_to_alpha> filter_type; inline std::ostream& operator<< (std::ostream& os, blur) { @@ -152,6 +160,12 @@ inline std::ostream& operator<< (std::ostream& os, agg_stack_blur const& filter) return os; } +inline std::ostream& operator<< (std::ostream& os, color_to_alpha const& filter) +{ + os << "color-to-alpha(" << filter.color << ')'; + return os; +} + inline std::ostream& operator<< (std::ostream& os, scale_hsla const& filter) { os << "hsla-transform(" << filter.h0 << 'x' << filter.h1 << ':' diff --git a/src/image_filter_grammar.cpp b/src/image_filter_grammar.cpp index a17191d14..033dc96d6 100644 --- a/src/image_filter_grammar.cpp +++ b/src/image_filter_grammar.cpp @@ -91,6 +91,8 @@ image_filter_grammar::image_filter_grammar() scale_hsla_filter(_val) | colorize_alpha_filter(_val) + | + color_to_alpha_filter(_val) ; agg_blur_filter = lit("agg-stack-blur")[_a = 1, _b = 1] @@ -122,6 +124,14 @@ image_filter_grammar::image_filter_grammar() | double_[at_c<1>(_r1) = _1] ; + + color_to_alpha_filter = lit("color-to-alpha") + >> lit('(') + >> css_color_[_a = _1] + >> lit(')') + [push_back(_r1,construct(_a))] + ; + no_args = -(lit('(') >> lit(')')); } diff --git a/tests/visual_tests/grids/raster-color-to-alpha1-512-512-1.0-grid-reference.json b/tests/visual_tests/grids/raster-color-to-alpha1-512-512-1.0-grid-reference.json new file mode 100644 index 000000000..53162f357 --- /dev/null +++ b/tests/visual_tests/grids/raster-color-to-alpha1-512-512-1.0-grid-reference.json @@ -0,0 +1,136 @@ +{ + "keys": [ + "" + ], + "data": {}, + "grid": [ + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " " + ] +} \ No newline at end of file diff --git a/tests/visual_tests/grids/raster-color-to-alpha2-512-512-1.0-grid-reference.json b/tests/visual_tests/grids/raster-color-to-alpha2-512-512-1.0-grid-reference.json new file mode 100644 index 000000000..53162f357 --- /dev/null +++ b/tests/visual_tests/grids/raster-color-to-alpha2-512-512-1.0-grid-reference.json @@ -0,0 +1,136 @@ +{ + "keys": [ + "" + ], + "data": {}, + "grid": [ + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " " + ] +} \ No newline at end of file diff --git a/tests/visual_tests/grids/raster-color-to-alpha3-512-512-1.0-grid-reference.json b/tests/visual_tests/grids/raster-color-to-alpha3-512-512-1.0-grid-reference.json new file mode 100644 index 000000000..53162f357 --- /dev/null +++ b/tests/visual_tests/grids/raster-color-to-alpha3-512-512-1.0-grid-reference.json @@ -0,0 +1,136 @@ +{ + "keys": [ + "" + ], + "data": {}, + "grid": [ + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " " + ] +} \ No newline at end of file diff --git a/tests/visual_tests/grids/raster-color-to-alpha4-512-512-1.0-grid-reference.json b/tests/visual_tests/grids/raster-color-to-alpha4-512-512-1.0-grid-reference.json new file mode 100644 index 000000000..53162f357 --- /dev/null +++ b/tests/visual_tests/grids/raster-color-to-alpha4-512-512-1.0-grid-reference.json @@ -0,0 +1,136 @@ +{ + "keys": [ + "" + ], + "data": {}, + "grid": [ + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " " + ] +} \ No newline at end of file diff --git a/tests/visual_tests/grids/raster-color-to-alpha5-512-512-1.0-grid-reference.json b/tests/visual_tests/grids/raster-color-to-alpha5-512-512-1.0-grid-reference.json new file mode 100644 index 000000000..53162f357 --- /dev/null +++ b/tests/visual_tests/grids/raster-color-to-alpha5-512-512-1.0-grid-reference.json @@ -0,0 +1,136 @@ +{ + "keys": [ + "" + ], + "data": {}, + "grid": [ + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " " + ] +} \ No newline at end of file diff --git a/tests/visual_tests/images/raster-color-to-alpha1-512-512-1.0-agg-reference.png b/tests/visual_tests/images/raster-color-to-alpha1-512-512-1.0-agg-reference.png new file mode 100644 index 0000000000000000000000000000000000000000..1a0e0ac354d54eb112f142a05a481f868783cfef GIT binary patch literal 73162 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 literal 0 HcmV?d00001 diff --git a/tests/visual_tests/images/raster-color-to-alpha1-512-512-2.0-agg-reference.png b/tests/visual_tests/images/raster-color-to-alpha1-512-512-2.0-agg-reference.png new file mode 100644 index 0000000000000000000000000000000000000000..1a0e0ac354d54eb112f142a05a481f868783cfef GIT binary patch literal 73162 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 literal 0 HcmV?d00001 diff --git a/tests/visual_tests/images/raster-color-to-alpha2-512-512-1.0-agg-reference.png b/tests/visual_tests/images/raster-color-to-alpha2-512-512-1.0-agg-reference.png new file mode 100644 index 0000000000000000000000000000000000000000..c14a73108a9b7191b045b81b932e79b328bd33f0 GIT binary patch literal 7103 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 F{yz^9K6C&8 literal 0 HcmV?d00001 diff --git a/tests/visual_tests/images/raster-color-to-alpha4-512-512-2.0-agg-reference.png b/tests/visual_tests/images/raster-color-to-alpha4-512-512-2.0-agg-reference.png new file mode 100644 index 0000000000000000000000000000000000000000..1ec158dbcd22fc9fe7a82e19bf676cf03cc7acf2 GIT binary patch literal 6426 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 F{yz^9K6C&8 literal 0 HcmV?d00001 diff --git a/tests/visual_tests/images/raster-color-to-alpha5-512-512-1.0-agg-reference.png b/tests/visual_tests/images/raster-color-to-alpha5-512-512-1.0-agg-reference.png new file mode 100644 index 0000000000000000000000000000000000000000..b75988967203d50d258af966236957124cf4dcea GIT binary patch literal 7777 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 literal 0 HcmV?d00001 diff --git a/tests/visual_tests/images/raster-color-to-alpha5-512-512-2.0-agg-reference.png b/tests/visual_tests/images/raster-color-to-alpha5-512-512-2.0-agg-reference.png new file mode 100644 index 0000000000000000000000000000000000000000..b75988967203d50d258af966236957124cf4dcea GIT binary patch literal 7777 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 literal 0 HcmV?d00001 diff --git a/tests/visual_tests/styles/raster-color-to-alpha1.xml b/tests/visual_tests/styles/raster-color-to-alpha1.xml new file mode 100644 index 000000000..5a66751ef --- /dev/null +++ b/tests/visual_tests/styles/raster-color-to-alpha1.xml @@ -0,0 +1,19 @@ + + + + + style + + + ../../data/raster/nodata-edge.tif + gdal + + + + \ No newline at end of file diff --git a/tests/visual_tests/styles/raster-color-to-alpha2.xml b/tests/visual_tests/styles/raster-color-to-alpha2.xml new file mode 100644 index 000000000..cd0206ef4 --- /dev/null +++ b/tests/visual_tests/styles/raster-color-to-alpha2.xml @@ -0,0 +1,20 @@ + + + + + style + + + ../../data/raster/river_merc.tiff + gdal + + + + \ No newline at end of file diff --git a/tests/visual_tests/styles/raster-color-to-alpha3.xml b/tests/visual_tests/styles/raster-color-to-alpha3.xml new file mode 100644 index 000000000..393e50669 --- /dev/null +++ b/tests/visual_tests/styles/raster-color-to-alpha3.xml @@ -0,0 +1,20 @@ + + + + + style + + + ../../data/raster/transp.tiff + gdal + + + + \ No newline at end of file diff --git a/tests/visual_tests/styles/raster-color-to-alpha4.xml b/tests/visual_tests/styles/raster-color-to-alpha4.xml new file mode 100644 index 000000000..40fbdc08a --- /dev/null +++ b/tests/visual_tests/styles/raster-color-to-alpha4.xml @@ -0,0 +1,27 @@ + + + + + + DISCRETE RAINBOW + + ../../data/raster/dataraster.tif + gdal + 1 + + + + \ No newline at end of file diff --git a/tests/visual_tests/styles/raster-color-to-alpha5.xml b/tests/visual_tests/styles/raster-color-to-alpha5.xml new file mode 100644 index 000000000..6a2f4add6 --- /dev/null +++ b/tests/visual_tests/styles/raster-color-to-alpha5.xml @@ -0,0 +1,27 @@ + + + + + + DISCRETE RAINBOW + + ../../data/raster/dataraster.tif + gdal + 1 + + + + \ No newline at end of file diff --git a/tests/visual_tests/test.py b/tests/visual_tests/test.py index 7140900d0..3346826fe 100755 --- a/tests/visual_tests/test.py +++ b/tests/visual_tests/test.py @@ -179,6 +179,11 @@ files = { 'vrt_colortable':{'sizes':[(256,256)]}, 'raster_colorizer':{'sizes':[(512,512)]}, 'raster_symbolizer':{'sizes':[(512,512)]}, + 'raster-color-to-alpha1':{'sizes':[(512,512)]}, + 'raster-color-to-alpha2':{'sizes':[(512,512)]}, + 'raster-color-to-alpha3':{'sizes':[(512,512)]}, + 'raster-color-to-alpha4':{'sizes':[(512,512)]}, + 'raster-color-to-alpha5':{'sizes':[(512,512)]} } class Reporting: From 35312768644730ae98e2a9a99b8d8fbd1e68ceff Mon Sep 17 00:00:00 2001 From: Dane Springmeyer Date: Thu, 26 Sep 2013 19:29:05 -0700 Subject: [PATCH 2/3] fix one part of #2024 --- include/mapnik/image_view.hpp | 5 ++--- include/mapnik/webp_io.hpp | 8 +++----- 2 files changed, 5 insertions(+), 8 deletions(-) diff --git a/include/mapnik/image_view.hpp b/include/mapnik/image_view.hpp index b7bf54985..0f0e1be9e 100644 --- a/include/mapnik/image_view.hpp +++ b/include/mapnik/image_view.hpp @@ -89,11 +89,10 @@ public: return data_.getRow(row + y_) + x_; } - inline char const* getBytes() const + inline const unsigned char* getBytes() const { - return reinterpret_cast(&data_); + return data_.getBytes(); } - inline T& data() { return data_; diff --git a/include/mapnik/webp_io.hpp b/include/mapnik/webp_io.hpp index a697b39c9..3e0043770 100644 --- a/include/mapnik/webp_io.hpp +++ b/include/mapnik/webp_io.hpp @@ -116,17 +116,15 @@ void save_as_webp(T1& file, if (alpha) { int stride = sizeof(typename T2::pixel_type) * image.width(); - uint8_t const* bytes = reinterpret_cast(image.getBytes()); - ok = WebPPictureImportRGBA(&pic, bytes, stride); + ok = WebPPictureImportRGBA(&pic, image.getBytes(), stride); } else { int stride = sizeof(typename T2::pixel_type) * image.width(); - uint8_t const* bytes = reinterpret_cast(image.getBytes()); #if (WEBP_ENCODER_ABI_VERSION >> 8) >= 1 - ok = WebPPictureImportRGBX(&pic, bytes, stride); + ok = WebPPictureImportRGBX(&pic, image.getBytes(), stride); #else - ok = WebPPictureImportRGBA(&pic, bytes, stride); + ok = WebPPictureImportRGBA(&pic, image.getBytes(), stride); #endif } From 0ca2edb206254b370763b9f89aaa94da902cae9e Mon Sep 17 00:00:00 2001 From: Dane Springmeyer Date: Thu, 26 Sep 2013 20:07:04 -0700 Subject: [PATCH 3/3] fix #2024 (TODO - avoid image copy for lossy encoding of views) --- include/mapnik/webp_io.hpp | 91 +++++++++++++++++++++++++++++++++----- 1 file changed, 79 insertions(+), 12 deletions(-) diff --git a/include/mapnik/webp_io.hpp b/include/mapnik/webp_io.hpp index 3e0043770..20f220278 100644 --- a/include/mapnik/webp_io.hpp +++ b/include/mapnik/webp_io.hpp @@ -68,6 +68,58 @@ std::string webp_encoding_error(WebPEncodingError error) return os; } +template +inline int import_image_data(T2 const& image, + WebPPicture & pic, + bool alpha) +{ + // Reason for copy: https://github.com/mapnik/mapnik/issues/2024 + // TODO - figure out way to pass view pixels directly to webp importer + image_data_32 im(image.width(),image.height()); + for (unsigned y = 0; y < image.height(); ++y) + { + typename T2::pixel_type const * row_from = image.getRow(y); + image_data_32::pixel_type * row_to = im.getRow(y); + for (unsigned x = 0; x < image.width(); ++x) + { + row_to[x] = row_from[x]; + } + } + int stride = sizeof(typename T2::pixel_type) * im.width(); + if (alpha) + { + return WebPPictureImportRGBA(&pic, im.getBytes(), stride); + } + else + { +#if (WEBP_ENCODER_ABI_VERSION >> 8) >= 1 + return WebPPictureImportRGBX(&pic, im.getBytes(), stride); +#else + return WebPPictureImportRGBA(&pic, im.getBytes(), stride); +#endif + } +} + +template <> +inline int import_image_data(image_data_32 const& im, + WebPPicture & pic, + bool alpha) +{ + int stride = sizeof(image_data_32::pixel_type) * im.width(); + if (alpha) + { + return WebPPictureImportRGBA(&pic, im.getBytes(), stride); + } + else + { +#if (WEBP_ENCODER_ABI_VERSION >> 8) >= 1 + return WebPPictureImportRGBX(&pic, im.getBytes(), stride); +#else + return WebPPictureImportRGBA(&pic, im.getBytes(), stride); +#endif + } +} + template void save_as_webp(T1& file, float quality, @@ -109,25 +161,40 @@ void save_as_webp(T1& file, } pic.width = image.width(); pic.height = image.height(); + int ok = 0; #if (WEBP_ENCODER_ABI_VERSION >> 8) >= 1 pic.use_argb = !!lossless; -#endif - int ok = 0; - if (alpha) + // lossless fast track + if (pic.use_argb) { - int stride = sizeof(typename T2::pixel_type) * image.width(); - ok = WebPPictureImportRGBA(&pic, image.getBytes(), stride); + pic.colorspace = static_cast(pic.colorspace | WEBP_CSP_ALPHA_BIT); + if (WebPPictureAlloc(&pic)) { + ok = 1; + const int width = pic.width; + const int height = pic.height; + for (int y = 0; y < height; ++y) { + typename T2::pixel_type const * row = image.getRow(y); + for (int x = 0; x < width; ++x) { + const unsigned rgba = row[x]; + unsigned a = (rgba >> 24) & 0xff; + unsigned r = rgba & 0xff; + unsigned g = (rgba >> 8 ) & 0xff; + unsigned b = (rgba >> 16) & 0xff; + const uint32_t argb = (a << 24) | (r << 16) | (g << 8) | (b); + pic.argb[x + y * pic.argb_stride] = argb; + } + } + } } else { - int stride = sizeof(typename T2::pixel_type) * image.width(); -#if (WEBP_ENCODER_ABI_VERSION >> 8) >= 1 - ok = WebPPictureImportRGBX(&pic, image.getBytes(), stride); -#else - ok = WebPPictureImportRGBA(&pic, image.getBytes(), stride); -#endif + // different approach for lossy since ImportYUVAFromRGBA is needed + // to prepare WebPPicture and working with view pixels is not viable + ok = import_image_data(image,pic,alpha); } - +#else + ok = import_image_data(image,pic,alpha); +#endif if (!ok) { throw std::runtime_error(webp_encoding_error(pic.error_code));