SlideShare uma empresa Scribd logo
1 de 25
Perlmagick



                    YAMAGUCHI Toshimitsu




eta]       [beta]                 [beta]   [beta]
eta]   [beta]   [beta]   [beta]
eta]   [beta]   [beta]   [beta]
eta]   [beta]   [beta]   [beta]
eta]   [beta]   [beta]   [beta]
eta]   [beta]   [beta]   [beta]
eta]   [beta]   [beta]   [beta]
eta]   [beta]   [beta]   [beta]
eta]   [beta]   [beta]   [beta]
eta]   [beta]   [beta]   [beta]
eta]   [beta]   [beta]   [beta]
eta]   [beta]   [beta]   [beta]
LAYER
                    NAME "route"
                    TYPE LINE
                    ....
                    CLASS
                      NAME "0"
                      STYLE
                         SYMBOL "circle"
                         SIZE 100
                         COLOR 255 0 255
                      END
                    END
                END




eta]   [beta]      [beta]                  [beta]
Image::Magick




eta]   [beta]           [beta]   [beta]
#!/usr/bin/perl
base.png
            use strict;
            use Image::Magick;

            my $baseImage;
            my $maskImage;

            $baseImage = Image::Magick->new;
            $baseImage->Read("base.png");
route.png
            $maskImage = Image::Magick->new;
            $maskImage->Read("route.png");
            $maskImage->Transparent(color =>
            '#ff00ff');

            $baseImage->Composite(image =>
            $maskImage, compose => 'Screen');
#!/usr/bin/perl
base.png
            use strict;
            use Image::Magick;

            my $baseImage;
            my $maskImage;

            $baseImage = Image::Magick->new;
            $baseImage->Read("base.png");
route.png
            $maskImage = Image::Magick->new;
            $maskImage->Read("route.png");
            $maskImage->Transparent(color =>
            '#ff00ff');

            $baseImage->Composite(image =>
            $maskImage, compose => 'Screen');
#!/usr/bin/perl
base.png
            use strict;
            use Image::Magick;

            my $baseImage;
            my $maskImage;

            $baseImage = Image::Magick->new;
            $baseImage->Read("base.png");
route.png
            $maskImage = Image::Magick->new;
            $maskImage->Read("route.png");
            $maskImage->Transparent(color =>
            '#ff00ff');

            $baseImage->Composite(image =>
            $maskImage, compose => 'Screen');
#!/usr/bin/perl
base.png
            use strict;
            use Image::Magick;

            my $baseImage;
            my $maskImage;

            $baseImage = Image::Magick->new;
            $baseImage->Read("base.png");
route.png
            $maskImage = Image::Magick->new;
            $maskImage->Read("route.png");
            $maskImage->Transparent(color =>
            '#ff00ff');

            $baseImage->Composite(image =>
            $maskImage, compose => 'Screen');
$baseImage = Image::Magick->new;
       $baseImage -> Read("base.png");




eta]   [beta]              [beta]         [beta]
$maskImage = Image::Magick->new;
       $maskImage -> Read("route.png");
       $maskImage -> Transparent(color => '#ff00ff');




eta]          [beta]              [beta]                [beta]
$baseImage -> Composite(image => $maskImage,
       compose => 'Screen');




eta]          [beta]              [beta]              [beta]
$baseImage

                             #!/usr/bin/perl

                             use strict;
                             use Image::Magick;

                             ...
                             $imageMarks = Image::Magick->new;
       marks.png             $imageMarks -> Read("marks.png");

                             $baseImage -> Composite(image =>
                             $imageMarks, compose => 'Over');
                             $baseImage -> Write("out.png");




eta]                [beta]           [beta]               [beta]
$baseImage

                             #!/usr/bin/perl

                             use strict;
                             use Image::Magick;

                             ...
                             $imageMarks = Image::Magick->new;
       marks.png             $imageMarks -> Read("marks.png");

                             $baseImage -> Composite(image =>
                             $imageMarks, compose => 'Over');
                             $baseImage -> Write("out.png");




eta]                [beta]           [beta]               [beta]
$baseImage -> Composite(image => $imageMarks,
       compose => 'Over');
       $baseImage -> Write("out.png");




eta]          [beta]              [beta]               [beta]
Perlmagickを使った画像処理

Mais conteúdo relacionado

Mais procurados

Let's write secure Drupal code! DUG Belgium - 08/08/2019
Let's write secure Drupal code! DUG Belgium - 08/08/2019Let's write secure Drupal code! DUG Belgium - 08/08/2019
Let's write secure Drupal code! DUG Belgium - 08/08/2019Balázs Tatár
 
Wynn Netherland: Accelerating Titanium Development with CoffeeScript, Compass...
Wynn Netherland: Accelerating Titanium Development with CoffeeScript, Compass...Wynn Netherland: Accelerating Titanium Development with CoffeeScript, Compass...
Wynn Netherland: Accelerating Titanium Development with CoffeeScript, Compass...Axway Appcelerator
 
Let's write secure Drupal code! - Drupal Camp Poland 2019
Let's write secure Drupal code! - Drupal Camp Poland 2019Let's write secure Drupal code! - Drupal Camp Poland 2019
Let's write secure Drupal code! - Drupal Camp Poland 2019Balázs Tatár
 
Let's write secure Drupal code!
Let's write secure Drupal code!Let's write secure Drupal code!
Let's write secure Drupal code!Balázs Tatár
 
Rapid web development, the right way.
Rapid web development, the right way.Rapid web development, the right way.
Rapid web development, the right way.nubela
 
Drupal 8 版型開發變革
Drupal 8 版型開發變革Drupal 8 版型開發變革
Drupal 8 版型開發變革Chris Wu
 
WordCamp Bristol 2019 - WordPress custom theme building
WordCamp Bristol 2019 - WordPress custom theme buildingWordCamp Bristol 2019 - WordPress custom theme building
WordCamp Bristol 2019 - WordPress custom theme buildingJonny Allbut
 
Geek Moot '09 -- Smarty 101
Geek Moot '09 -- Smarty 101Geek Moot '09 -- Smarty 101
Geek Moot '09 -- Smarty 101Ted Kulp
 
Drupal 7 — Circle theme
Drupal 7 — Circle themeDrupal 7 — Circle theme
Drupal 7 — Circle themeKirill Borzov
 
PHP tips and tricks
PHP tips and tricks PHP tips and tricks
PHP tips and tricks Damien Seguy
 
Drupal vs WordPress
Drupal vs WordPressDrupal vs WordPress
Drupal vs WordPressWalter Ebert
 
Let's write secure Drupal code! - 13.09.2018 @ Drupal Europe, Darmstadt, Germany
Let's write secure Drupal code! - 13.09.2018 @ Drupal Europe, Darmstadt, GermanyLet's write secure Drupal code! - 13.09.2018 @ Drupal Europe, Darmstadt, Germany
Let's write secure Drupal code! - 13.09.2018 @ Drupal Europe, Darmstadt, GermanyBalázs Tatár
 
Open Network Lab (At Tokyo 2point0)
Open Network Lab (At Tokyo 2point0)Open Network Lab (At Tokyo 2point0)
Open Network Lab (At Tokyo 2point0)Open Network Lab
 

Mais procurados (20)

Let's write secure Drupal code! DUG Belgium - 08/08/2019
Let's write secure Drupal code! DUG Belgium - 08/08/2019Let's write secure Drupal code! DUG Belgium - 08/08/2019
Let's write secure Drupal code! DUG Belgium - 08/08/2019
 
Wynn Netherland: Accelerating Titanium Development with CoffeeScript, Compass...
Wynn Netherland: Accelerating Titanium Development with CoffeeScript, Compass...Wynn Netherland: Accelerating Titanium Development with CoffeeScript, Compass...
Wynn Netherland: Accelerating Titanium Development with CoffeeScript, Compass...
 
Let's write secure Drupal code! - Drupal Camp Poland 2019
Let's write secure Drupal code! - Drupal Camp Poland 2019Let's write secure Drupal code! - Drupal Camp Poland 2019
Let's write secure Drupal code! - Drupal Camp Poland 2019
 
Let's write secure Drupal code!
Let's write secure Drupal code!Let's write secure Drupal code!
Let's write secure Drupal code!
 
Rapid web development, the right way.
Rapid web development, the right way.Rapid web development, the right way.
Rapid web development, the right way.
 
Drupal 8 版型開發變革
Drupal 8 版型開發變革Drupal 8 版型開發變革
Drupal 8 版型開發變革
 
Php
PhpPhp
Php
 
Daily notes
Daily notesDaily notes
Daily notes
 
WordCamp Bristol 2019 - WordPress custom theme building
WordCamp Bristol 2019 - WordPress custom theme buildingWordCamp Bristol 2019 - WordPress custom theme building
WordCamp Bristol 2019 - WordPress custom theme building
 
Geek Moot '09 -- Smarty 101
Geek Moot '09 -- Smarty 101Geek Moot '09 -- Smarty 101
Geek Moot '09 -- Smarty 101
 
Drupal 7 — Circle theme
Drupal 7 — Circle themeDrupal 7 — Circle theme
Drupal 7 — Circle theme
 
Knockout
KnockoutKnockout
Knockout
 
PHP tips and tricks
PHP tips and tricks PHP tips and tricks
PHP tips and tricks
 
20110820 header new style
20110820 header new style20110820 header new style
20110820 header new style
 
Symfony 1, mi viejo amigo
Symfony 1, mi viejo amigoSymfony 1, mi viejo amigo
Symfony 1, mi viejo amigo
 
Drupal vs WordPress
Drupal vs WordPressDrupal vs WordPress
Drupal vs WordPress
 
Let's write secure Drupal code! - 13.09.2018 @ Drupal Europe, Darmstadt, Germany
Let's write secure Drupal code! - 13.09.2018 @ Drupal Europe, Darmstadt, GermanyLet's write secure Drupal code! - 13.09.2018 @ Drupal Europe, Darmstadt, Germany
Let's write secure Drupal code! - 13.09.2018 @ Drupal Europe, Darmstadt, Germany
 
$.Template
$.Template$.Template
$.Template
 
Open Network Lab (At Tokyo 2point0)
Open Network Lab (At Tokyo 2point0)Open Network Lab (At Tokyo 2point0)
Open Network Lab (At Tokyo 2point0)
 
Quality code by design
Quality code by designQuality code by design
Quality code by design
 

Destaque

Introduction of Web Accessibility at Kawasaki
Introduction of Web Accessibility at KawasakiIntroduction of Web Accessibility at Kawasaki
Introduction of Web Accessibility at KawasakiToshimitsu YAMAGUCHI
 
触地図自動作成システム「tmacs」の開発
触地図自動作成システム「tmacs」の開発触地図自動作成システム「tmacs」の開発
触地図自動作成システム「tmacs」の開発Toshimitsu YAMAGUCHI
 
支援技術と特別支援教育 — 視覚障害教育とiPad
支援技術と特別支援教育 — 視覚障害教育とiPad支援技術と特別支援教育 — 視覚障害教育とiPad
支援技術と特別支援教育 — 視覚障害教育とiPadToshimitsu YAMAGUCHI
 
Acarodermatitis Urticarioides
Acarodermatitis UrticarioidesAcarodermatitis Urticarioides
Acarodermatitis UrticarioidesSinan Özlp
 
新潟市における障がい者の情報技術に関するニーズ調査
新潟市における障がい者の情報技術に関するニーズ調査新潟市における障がい者の情報技術に関するニーズ調査
新潟市における障がい者の情報技術に関するニーズ調査Toshimitsu YAMAGUCHI
 
第53回WIT研究会におけるリアルタイム映像配信 -技術編-
第53回WIT研究会におけるリアルタイム映像配信 -技術編-第53回WIT研究会におけるリアルタイム映像配信 -技術編-
第53回WIT研究会におけるリアルタイム映像配信 -技術編-Toshimitsu YAMAGUCHI
 
秋葉区ボランティアセンタ支援技術講座
秋葉区ボランティアセンタ支援技術講座秋葉区ボランティアセンタ支援技術講座
秋葉区ボランティアセンタ支援技術講座Toshimitsu YAMAGUCHI
 
触地図システムの機能紹介
触地図システムの機能紹介触地図システムの機能紹介
触地図システムの機能紹介Toshimitsu YAMAGUCHI
 
視覚障害者のための触地図作成システムの開発—経路情報を利用した触地図簡略化—
視覚障害者のための触地図作成システムの開発—経路情報を利用した触地図簡略化—視覚障害者のための触地図作成システムの開発—経路情報を利用した触地図簡略化—
視覚障害者のための触地図作成システムの開発—経路情報を利用した触地図簡略化—Toshimitsu YAMAGUCHI
 
第58回WIT研究会におけるリアルタイム映像配信の報告
第58回WIT研究会におけるリアルタイム映像配信の報告第58回WIT研究会におけるリアルタイム映像配信の報告
第58回WIT研究会におけるリアルタイム映像配信の報告Toshimitsu YAMAGUCHI
 
先端人間支援科学ミーティング資料
先端人間支援科学ミーティング資料先端人間支援科学ミーティング資料
先端人間支援科学ミーティング資料Toshimitsu YAMAGUCHI
 

Destaque (15)

Introduction of Web Accessibility at Kawasaki
Introduction of Web Accessibility at KawasakiIntroduction of Web Accessibility at Kawasaki
Introduction of Web Accessibility at Kawasaki
 
触地図自動作成システム「tmacs」の開発
触地図自動作成システム「tmacs」の開発触地図自動作成システム「tmacs」の開発
触地図自動作成システム「tmacs」の開発
 
支援技術と特別支援教育 — 視覚障害教育とiPad
支援技術と特別支援教育 — 視覚障害教育とiPad支援技術と特別支援教育 — 視覚障害教育とiPad
支援技術と特別支援教育 — 視覚障害教育とiPad
 
Acarodermatitis Urticarioides
Acarodermatitis UrticarioidesAcarodermatitis Urticarioides
Acarodermatitis Urticarioides
 
新潟養護学校勉強会2010
新潟養護学校勉強会2010新潟養護学校勉強会2010
新潟養護学校勉強会2010
 
CSUN2010報告
CSUN2010報告CSUN2010報告
CSUN2010報告
 
新潟市における障がい者の情報技術に関するニーズ調査
新潟市における障がい者の情報技術に関するニーズ調査新潟市における障がい者の情報技術に関するニーズ調査
新潟市における障がい者の情報技術に関するニーズ調査
 
第53回WIT研究会におけるリアルタイム映像配信 -技術編-
第53回WIT研究会におけるリアルタイム映像配信 -技術編-第53回WIT研究会におけるリアルタイム映像配信 -技術編-
第53回WIT研究会におけるリアルタイム映像配信 -技術編-
 
秋葉区ボランティアセンタ支援技術講座
秋葉区ボランティアセンタ支援技術講座秋葉区ボランティアセンタ支援技術講座
秋葉区ボランティアセンタ支援技術講座
 
UAI Seminar 2008 at Nagoya
UAI Seminar 2008 at NagoyaUAI Seminar 2008 at Nagoya
UAI Seminar 2008 at Nagoya
 
2010MSW協会プレゼン
2010MSW協会プレゼン2010MSW協会プレゼン
2010MSW協会プレゼン
 
触地図システムの機能紹介
触地図システムの機能紹介触地図システムの機能紹介
触地図システムの機能紹介
 
視覚障害者のための触地図作成システムの開発—経路情報を利用した触地図簡略化—
視覚障害者のための触地図作成システムの開発—経路情報を利用した触地図簡略化—視覚障害者のための触地図作成システムの開発—経路情報を利用した触地図簡略化—
視覚障害者のための触地図作成システムの開発—経路情報を利用した触地図簡略化—
 
第58回WIT研究会におけるリアルタイム映像配信の報告
第58回WIT研究会におけるリアルタイム映像配信の報告第58回WIT研究会におけるリアルタイム映像配信の報告
第58回WIT研究会におけるリアルタイム映像配信の報告
 
先端人間支援科学ミーティング資料
先端人間支援科学ミーティング資料先端人間支援科学ミーティング資料
先端人間支援科学ミーティング資料
 

Semelhante a Perlmagickを使った画像処理

Автотесты для картинок
Автотесты для картинокАвтотесты для картинок
Автотесты для картинокPetr Trofimov
 
st_launcher: Tonel-based Smalltalk shell Scripts
 st_launcher: Tonel-based Smalltalk shell Scripts st_launcher: Tonel-based Smalltalk shell Scripts
st_launcher: Tonel-based Smalltalk shell ScriptsESUG
 
AtlasCamp 2013: Modernizing your Plugin UI
AtlasCamp 2013: Modernizing your Plugin UI AtlasCamp 2013: Modernizing your Plugin UI
AtlasCamp 2013: Modernizing your Plugin UI colleenfry
 
Drupal Development (Part 2)
Drupal Development (Part 2)Drupal Development (Part 2)
Drupal Development (Part 2)Jeff Eaton
 
Simple Photo Processing and Web Display with Perl
Simple Photo Processing and Web Display with PerlSimple Photo Processing and Web Display with Perl
Simple Photo Processing and Web Display with PerlKent Cowgill
 
Image upload in php MySql
Image upload in php MySqlImage upload in php MySql
Image upload in php MySqlIshaq Shinwari
 
Ten modules I haven't yet talked about
Ten modules I haven't yet talked aboutTen modules I haven't yet talked about
Ten modules I haven't yet talked aboutacme
 
Best Practice Testing with Lime 2
Best Practice Testing with Lime 2Best Practice Testing with Lime 2
Best Practice Testing with Lime 2Bernhard Schussek
 
An Introduction to Tinkerpop
An Introduction to TinkerpopAn Introduction to Tinkerpop
An Introduction to TinkerpopTakahiro Inoue
 
Keeping it Small: Getting to know the Slim Micro Framework
Keeping it Small: Getting to know the Slim Micro FrameworkKeeping it Small: Getting to know the Slim Micro Framework
Keeping it Small: Getting to know the Slim Micro FrameworkJeremy Kendall
 
Azure Expert Leading Camp UA - 2015
Azure Expert Leading Camp UA - 2015Azure Expert Leading Camp UA - 2015
Azure Expert Leading Camp UA - 2015Oleg Chorny
 
前端MVC 豆瓣说
前端MVC 豆瓣说前端MVC 豆瓣说
前端MVC 豆瓣说Ting Lv
 
How else can you write the code in PHP?
How else can you write the code in PHP?How else can you write the code in PHP?
How else can you write the code in PHP?Maksym Hopei
 

Semelhante a Perlmagickを使った画像処理 (19)

画像Hacks
画像Hacks画像Hacks
画像Hacks
 
Images and PWA in magento
Images and PWA in magentoImages and PWA in magento
Images and PWA in magento
 
Автотесты для картинок
Автотесты для картинокАвтотесты для картинок
Автотесты для картинок
 
st_launcher: Tonel-based Smalltalk shell Scripts
 st_launcher: Tonel-based Smalltalk shell Scripts st_launcher: Tonel-based Smalltalk shell Scripts
st_launcher: Tonel-based Smalltalk shell Scripts
 
AtlasCamp 2013: Modernizing your Plugin UI
AtlasCamp 2013: Modernizing your Plugin UI AtlasCamp 2013: Modernizing your Plugin UI
AtlasCamp 2013: Modernizing your Plugin UI
 
Drupal Development (Part 2)
Drupal Development (Part 2)Drupal Development (Part 2)
Drupal Development (Part 2)
 
Simple Photo Processing and Web Display with Perl
Simple Photo Processing and Web Display with PerlSimple Photo Processing and Web Display with Perl
Simple Photo Processing and Web Display with Perl
 
Image upload in php MySql
Image upload in php MySqlImage upload in php MySql
Image upload in php MySql
 
Ten modules I haven't yet talked about
Ten modules I haven't yet talked aboutTen modules I haven't yet talked about
Ten modules I haven't yet talked about
 
Best Practice Testing with Lime 2
Best Practice Testing with Lime 2Best Practice Testing with Lime 2
Best Practice Testing with Lime 2
 
An Introduction to Tinkerpop
An Introduction to TinkerpopAn Introduction to Tinkerpop
An Introduction to Tinkerpop
 
Drawing images
Drawing imagesDrawing images
Drawing images
 
Keeping it Small: Getting to know the Slim Micro Framework
Keeping it Small: Getting to know the Slim Micro FrameworkKeeping it Small: Getting to know the Slim Micro Framework
Keeping it Small: Getting to know the Slim Micro Framework
 
Azure Expert Leading Camp UA - 2015
Azure Expert Leading Camp UA - 2015Azure Expert Leading Camp UA - 2015
Azure Expert Leading Camp UA - 2015
 
前端MVC 豆瓣说
前端MVC 豆瓣说前端MVC 豆瓣说
前端MVC 豆瓣说
 
Presentation1
Presentation1Presentation1
Presentation1
 
Hacking Movable Type
Hacking Movable TypeHacking Movable Type
Hacking Movable Type
 
Lithium Best
Lithium Best Lithium Best
Lithium Best
 
How else can you write the code in PHP?
How else can you write the code in PHP?How else can you write the code in PHP?
How else can you write the code in PHP?
 

Mais de Toshimitsu YAMAGUCHI

触地図作成システムパンフレット
触地図作成システムパンフレット触地図作成システムパンフレット
触地図作成システムパンフレットToshimitsu YAMAGUCHI
 
触地図作成システムの開発
触地図作成システムの開発触地図作成システムの開発
触地図作成システムの開発Toshimitsu YAMAGUCHI
 
新潟市障がい者ITサポートセンターの活動 - 新潟市におけるITサポートの実践と課題
新潟市障がい者ITサポートセンターの活動 - 新潟市におけるITサポートの実践と課題新潟市障がい者ITサポートセンターの活動 - 新潟市におけるITサポートの実践と課題
新潟市障がい者ITサポートセンターの活動 - 新潟市におけるITサポートの実践と課題Toshimitsu YAMAGUCHI
 
視覚障害者のための触地図作成システムの試作
視覚障害者のための触地図作成システムの試作視覚障害者のための触地図作成システムの試作
視覚障害者のための触地図作成システムの試作Toshimitsu YAMAGUCHI
 
Assistive Technologies for Web Access
Assistive Technologies for Web AccessAssistive Technologies for Web Access
Assistive Technologies for Web AccessToshimitsu YAMAGUCHI
 

Mais de Toshimitsu YAMAGUCHI (8)

触地図作成システムパンフレット
触地図作成システムパンフレット触地図作成システムパンフレット
触地図作成システムパンフレット
 
サイトワールド2010
サイトワールド2010サイトワールド2010
サイトワールド2010
 
G空間EXPO 触地図ポスタ
G空間EXPO 触地図ポスタG空間EXPO 触地図ポスタ
G空間EXPO 触地図ポスタ
 
触地図作成システムの開発
触地図作成システムの開発触地図作成システムの開発
触地図作成システムの開発
 
新潟市障がい者ITサポートセンターの活動 - 新潟市におけるITサポートの実践と課題
新潟市障がい者ITサポートセンターの活動 - 新潟市におけるITサポートの実践と課題新潟市障がい者ITサポートセンターの活動 - 新潟市におけるITサポートの実践と課題
新潟市障がい者ITサポートセンターの活動 - 新潟市におけるITサポートの実践と課題
 
pgRoutingを使った経路検索
pgRoutingを使った経路検索pgRoutingを使った経路検索
pgRoutingを使った経路検索
 
視覚障害者のための触地図作成システムの試作
視覚障害者のための触地図作成システムの試作視覚障害者のための触地図作成システムの試作
視覚障害者のための触地図作成システムの試作
 
Assistive Technologies for Web Access
Assistive Technologies for Web AccessAssistive Technologies for Web Access
Assistive Technologies for Web Access
 

Último

Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelDeepika Singh
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Zilliz
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 

Último (20)

Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 

Perlmagickを使った画像処理

  • 1. Perlmagick YAMAGUCHI Toshimitsu eta] [beta] [beta] [beta]
  • 2. eta] [beta] [beta] [beta]
  • 3. eta] [beta] [beta] [beta]
  • 4. eta] [beta] [beta] [beta]
  • 5. eta] [beta] [beta] [beta]
  • 6. eta] [beta] [beta] [beta]
  • 7. eta] [beta] [beta] [beta]
  • 8. eta] [beta] [beta] [beta]
  • 9. eta] [beta] [beta] [beta]
  • 10. eta] [beta] [beta] [beta]
  • 11. eta] [beta] [beta] [beta]
  • 12. eta] [beta] [beta] [beta]
  • 13. LAYER NAME "route" TYPE LINE .... CLASS NAME "0" STYLE SYMBOL "circle" SIZE 100 COLOR 255 0 255 END END END eta] [beta] [beta] [beta]
  • 14. Image::Magick eta] [beta] [beta] [beta]
  • 15. #!/usr/bin/perl base.png use strict; use Image::Magick; my $baseImage; my $maskImage; $baseImage = Image::Magick->new; $baseImage->Read("base.png"); route.png $maskImage = Image::Magick->new; $maskImage->Read("route.png"); $maskImage->Transparent(color => '#ff00ff'); $baseImage->Composite(image => $maskImage, compose => 'Screen');
  • 16. #!/usr/bin/perl base.png use strict; use Image::Magick; my $baseImage; my $maskImage; $baseImage = Image::Magick->new; $baseImage->Read("base.png"); route.png $maskImage = Image::Magick->new; $maskImage->Read("route.png"); $maskImage->Transparent(color => '#ff00ff'); $baseImage->Composite(image => $maskImage, compose => 'Screen');
  • 17. #!/usr/bin/perl base.png use strict; use Image::Magick; my $baseImage; my $maskImage; $baseImage = Image::Magick->new; $baseImage->Read("base.png"); route.png $maskImage = Image::Magick->new; $maskImage->Read("route.png"); $maskImage->Transparent(color => '#ff00ff'); $baseImage->Composite(image => $maskImage, compose => 'Screen');
  • 18. #!/usr/bin/perl base.png use strict; use Image::Magick; my $baseImage; my $maskImage; $baseImage = Image::Magick->new; $baseImage->Read("base.png"); route.png $maskImage = Image::Magick->new; $maskImage->Read("route.png"); $maskImage->Transparent(color => '#ff00ff'); $baseImage->Composite(image => $maskImage, compose => 'Screen');
  • 19. $baseImage = Image::Magick->new; $baseImage -> Read("base.png"); eta] [beta] [beta] [beta]
  • 20. $maskImage = Image::Magick->new; $maskImage -> Read("route.png"); $maskImage -> Transparent(color => '#ff00ff'); eta] [beta] [beta] [beta]
  • 21. $baseImage -> Composite(image => $maskImage, compose => 'Screen'); eta] [beta] [beta] [beta]
  • 22. $baseImage #!/usr/bin/perl use strict; use Image::Magick; ... $imageMarks = Image::Magick->new; marks.png $imageMarks -> Read("marks.png"); $baseImage -> Composite(image => $imageMarks, compose => 'Over'); $baseImage -> Write("out.png"); eta] [beta] [beta] [beta]
  • 23. $baseImage #!/usr/bin/perl use strict; use Image::Magick; ... $imageMarks = Image::Magick->new; marks.png $imageMarks -> Read("marks.png"); $baseImage -> Composite(image => $imageMarks, compose => 'Over'); $baseImage -> Write("out.png"); eta] [beta] [beta] [beta]
  • 24. $baseImage -> Composite(image => $imageMarks, compose => 'Over'); $baseImage -> Write("out.png"); eta] [beta] [beta] [beta]

Notas do Editor