Image-Magick
view release on metacpan or search on metacpan
{ "AutoLevel", { {"channel", MagickChannelOptions} } },
{ "LevelColors", { {"invert", MagickBooleanOptions},
{"black-point", StringReference}, {"white-point", StringReference},
{"channel", MagickChannelOptions}, {"invert", MagickBooleanOptions} } },
{ "Clamp", { {"channel", MagickChannelOptions} } },
{ "BrightnessContrast", { {"levels", StringReference},
{"brightness", RealReference},{"contrast", RealReference},
{"channel", MagickChannelOptions} } },
{ "Morphology", { {"kernel", StringReference},
{"channel", MagickChannelOptions}, {"method", MagickMorphologyOptions},
{"iterations", IntegerReference} } },
{ "Mode", { {"geometry", StringReference},
{"width", IntegerReference},{"height", IntegerReference},
{"channel", MagickChannelOptions} } },
{ "Statistic", { {"geometry", StringReference},
{"width", IntegerReference},{"height", IntegerReference},
{"channel", MagickChannelOptions}, {"type", MagickStatisticOptions} } },
{ "Perceptible", { {"epsilon", RealReference},
{"channel", MagickChannelOptions} } },
{ "Poly", { {"terms", ArrayReference},
{"channel", MagickChannelOptions} } },
{ "Colorspace", { {"colorspace", MagickColorspaceOptions} } },
{ "AutoThreshold", { {"method", MagickAutoThresholdOptions} } },
{ "RangeThreshold", { {"geometry", StringReference},
{"low-black", RealReference}, {"low-white", RealReference},
{"high-white", RealReference}, {"high-black", RealReference},
{"channel", MagickChannelOptions} } },
{ "CLAHE", { {"geometry", StringReference}, {"width", IntegerReference},
{"height", IntegerReference}, {"number-bins", IntegerReference},
{"clip-limit", RealReference} } },
{ "Kmeans", { {"geometry", StringReference}, {"colors", IntegerReference},
{"iterations", IntegerReference}, {"tolerance", RealReference} } },
{ "ColorThreshold", { {"start-color", StringReference},
{"stop-color", StringReference}, {"channel", MagickChannelOptions} } },
{ "WhiteBalance", { { (const char *) NULL, NullReference } } },
{ "BilateralBlur", { {"geometry", StringReference},
{"width", IntegerReference}, {"height", IntegerReference},
{"intensity-sigma", RealReference}, {"spatial-sigma", RealReference},
{"channel", MagickChannelOptions} } },
{ "SortPixels", { { (const char *) NULL, NullReference } } },
{ "Integral", { { (const char *) NULL, NullReference } } },
};
{
items=sscanf(SvPV(sval,na),"%ld",&index);
if ((index >= 0) && (index < (ssize_t) image->colors))
SetPixelIndex(image,index,q);
(void) SyncCacheViewAuthenticPixels(image_view,exception);
}
image_view=DestroyCacheView(image_view);
}
break;
}
if (LocaleCompare(attribute,"iterations") == 0)
{
iterations:
for ( ; image; image=image->next)
image->iterations=(size_t) SvIV(sval);
break;
}
if (LocaleCompare(attribute,"interlace") == 0)
{
sp=SvPOK(sval) ? ParseCommandOption(MagickInterlaceOptions,
MagickFalse,SvPV(sval,na)) : SvIV(sval);
if (sp < 0)
{
ThrowPerlException(exception,OptionError,
"UnrecognizedInterlaceType",SvPV(sval,na));
{
if (LocaleCompare(attribute,"label") == 0)
{
for ( ; image; image=image->next)
(void) SetImageProperty(image,"label",InterpretImageProperties(
info ? info->image_info : (ImageInfo *) NULL,image,
SvPV(sval,na),exception),exception);
break;
}
if (LocaleCompare(attribute,"loop") == 0)
goto iterations;
if (info)
SetImageOption(info->image_info,attribute,SvPV(sval,na));
for ( ; image; image=image->next)
{
(void) SetImageProperty(image,attribute,SvPV(sval,na),exception);
(void) SetImageArtifact(image,attribute,SvPV(sval,na));
}
break;
}
case 'M':
*profile;
profile=GetImageProfile(image,"iptc");
if (profile != (const StringInfo *) NULL)
s=newSVpv((const char *) GetStringInfoDatum(profile),
GetStringInfoLength(profile));
}
PUSHs(s ? sv_2mortal(s) : &sv_undef);
continue;
}
if (LocaleCompare(attribute,"iterations") == 0) /* same as loop */
{
if (image != (Image *) NULL)
s=newSViv((ssize_t) image->iterations);
PUSHs(s ? sv_2mortal(s) : &sv_undef);
continue;
}
if (LocaleCompare(attribute,"interlace") == 0)
{
j=info ? info->image_info->interlace : image ? image->interlace :
UndefinedInterlace;
if (info)
if (info->image_info->interlace == UndefinedInterlace)
j=image->interlace;
*value;
if (image == (Image *) NULL)
break;
value=GetImageProperty(image,"Label",exception);
if (value != (const char *) NULL)
s=newSVpv(value,0);
PUSHs(s ? sv_2mortal(s) : &sv_undef);
continue;
}
if (LocaleCompare(attribute,"loop") == 0) /* same as iterations */
{
if (image != (Image *) NULL)
s=newSViv((ssize_t) image->iterations);
PUSHs(s ? sv_2mortal(s) : &sv_undef);
continue;
}
ThrowPerlException(exception,OptionError,"UnrecognizedAttribute",
attribute);
break;
}
case 'M':
case 'm':
{
}
case 132: /* Morphology */
{
KernelInfo
*kernel;
MorphologyMethod
method;
ssize_t
iterations;
if (attribute_flag[0] == 0)
break;
kernel=AcquireKernelInfo(argument_list[0].string_reference,exception);
if (kernel == (KernelInfo *) NULL)
break;
if (attribute_flag[1] != 0)
channel=(ChannelType) argument_list[1].integer_reference;
method=UndefinedMorphology;
if (attribute_flag[2] != 0)
method=(MorphologyMethod) argument_list[2].integer_reference;
iterations=1;
if (attribute_flag[3] != 0)
iterations=argument_list[3].integer_reference;
channel_mask=SetImageChannelMask(image,channel);
image=MorphologyImage(image,method,iterations,kernel,exception);
if (image != (Image *) NULL)
(void) SetImageChannelMask(image,channel_mask);
kernel=DestroyKernelInfo(kernel);
break;
}
case 133: /* Mode */
{
if (attribute_flag[0] != 0)
{
flags=ParseGeometry(argument_list[0].string_reference,
demo/demo.pl view on Meta::CPAN
print "Monochrome...\n";
$example=$model->Clone();
$example->Label('Monochrome');
$example->Quantize(colorspace=>'gray',colors=>2,dither=>'false');
push(@$images,$example);
print "Morphology...\n";
$example=$model->Clone();
$example->Label('Morphology');
$example->Morphology(method=>'Dilate',kernel=>'Diamond',iterations=>2);
push(@$images,$example);
print "Motion Blur...\n";
$example=$model->Clone();
$example->Label('Motion Blur');
$example->MotionBlur('0x13+10-10');
push(@$images,$example);
print "Negate...\n";
$example=$model->Clone();
t/reference/read/input_gray_msb_08bit_mat.miff view on Meta::CPAN
id=ImageMagick version=1.0
class=DirectClass colors=256 alpha-trait=Undefined
columns=67 rows=71 depth=8
type=Grayscale
colorspace=Gray
compression=None quality=0
page=67x71+0+0
iterations=0 delay=0 ticks-per-second=100
gamma=0.454545
date:create=2015-04-15T08:36:04-04:00
date:modify=2009-09-05T17:47:34-04:00
:Z@HKKKNX\acacceddegghddedgedbcba_\UKj~~ÍÊ\R[[][^[^]
U;DFGFMW[]aaabddcbccdabccbbb`____[SK]{»ÒNWZZ[[[]_T:BHFCLT[]_baabeccbbcbaadgcb``]__]UPOs~~~ÏÍgQVZ[\_a\V9AGEEKTX\__`a`aaab^^__^_ebb^_]^\\XNLk...
]>9z=I(O4ke-^$:I(X^eehqx§²ÀÈΫ[}{xrohÀÍÐ <@OAOG4x,5; ??qj{M&RN0Xceegms~¢°½ÆÌÐe|zwskb®ÌÐËp>DN?EX3y/2,SgD>:;?8YK<]chdcipy¹ÃÉÏYo{xwukg¹ÅÒVCGAD7a4.'%#)2S_V<EZ?Iaijgdgov¨¶ÀÆË...
!4wB $&YN-:.>RE.abjjjedkpx¼ÅÊÐP537AOt|È´L.6=CA-:l?!$*nY<-KLOdfgklieglt~¦·ÂÈÍFE4$6¯Êz$-9J:G>NG¢m:$!!"5`@
>P >_ehhjlkihipy±¾Å˹AQE6!3º¯##-H57Q0XM
¢l0 +<+10X&*.%?U^efhjnpmjilv~¨¸ÂÉ...
class=DirectClass colors=256 alpha-trait=Undefined
columns=71 rows=73 depth=8
colorspace=sRGB
compression=None quality=0
page=71x73+0+0
scene=1 iterations=0 delay=0 ticks-per-second=100
rendering-intent=Perceptual
gamma=0.454545
red-primary=0.64,0.33 green-primary=0.3,0.6 blue-primary=0.15,0.06
white-point=0.3127,0.329
date:create=2015-04-15T08:36:04-04:00
date:modify=2009-09-05T17:47:34-04:00
:yE,G&A&A'?%A)?*A+?)=(;'C%]cw-o&nDPªt
¯® ®|¦cRxF¤ S >a2g7£r:§y<£u;d6V)M¥n¬´SL#¡g¯xtJ?#;"}5~I0<!E#jh4oI¥Q«W«X¬Z©]p?N/xK-bm>bHdHoM§U¦UK+¯Q'±N)¯L(K%¯L'±K+´L.³K-µH-´F,®D...
r Vt¯Sq«Ox²U|³V}±Q¾ViLvN²RµNEg:|AwªL{³P}°^ÁqyM8F¨6,!Å,'Ä# ¿¿»¸¹*"c@©v®¡r²0À("Ã*$Á*$½*#¹)!º*"¼,$»+#¿/'À2'Ã5&Ä6)Å7'Å8&Ã6$¾1À3!À3!Ã0 À3!¹l:¼YÇXÉZÊ[§Ñc§Ðb«Òe¦Í` Ê\§Ñc£Í`{PmOuRq©Nm¤J|²V~²RÁVmRy´T
¶T...
fJ¼B,¼&%½»º¾½ »´ jFªa®Á«J*»/(¾(#À&!Ã*!Æ-%Ì3+ÎA7Â3*Á-&Á0)Â2*Â2)Ä6)Ã4(Ã5%Æ8%Ç9%Ç9%Ã7$Å7&Ä4#Å5!Ê7'Ì8'É<&¸T,Q³Pd|4We$b~8[
8]>o¬Ss¶[uº_|¿ey»ak²Spº_~ÁyÄ}|Àrw¼hp³Z³V_Hl©Ms³Wq¯Pl@6&#%({gA±_·,!½ ¼¼¼½»¸0$S¾s...
t/setattribute.t view on Meta::CPAN
++$test;
testSetAttribute('input.miff','display','bogus:0.0');
++$test;
testSetAttribute('input.miff','filename','bogus.jpg');
++$test;
testSetAttribute('input.miff','font',q/-*-helvetica-medium-r-*-*-12-*-*-*-*-*-iso8859-*/);
++$test;
testSetAttribute('input.miff','iterations',10);
++$test;
testSetAttribute('input.miff','interlace','None');
++$test;
testSetAttribute('input.miff','interlace','Line');
++$test;
testSetAttribute('input.miff','interlace','Plane');
( run in 0.456 second using v1.01-cache-2.11-cpan-71847e10f99 )