Dec 21, 2010

Happy Holiday!

Happy Holiday!

imagelineofart

Be a nice person in 2011, everyone will be happy.

How to generate this image?

First, find an image, then

img2 = ColorConvert[img, "HSB"];
img3 = ImageData[img2][[All, All, 3]];
ListPlot[Table[img3[[i]]*10 - i, {i, 1, ImageDimensions[img][[2]], 3}],
PlotRange -> All, Axes -> None, Joined -> True, PlotStyle -> {{Black}, {Thick, Lighter[Black]}}, AspectRatio -> ImageAspectRatio[img]]

5 comments:

Yaroslav said...

wow, with one dimensional ListPlot...took a minute to figure out that one

Sander Huisman said...

Very neat! I loved how you used ListPlot to do it! And I see you already use Mathematica 8 as well, very nice :)

Pope said...

太帅了!

Martim said...

Hey, so I'm trying to do what you did with the lines vertically instead (I just transposed to do it). I then wanted to ImageAdd the two graphs but I cant because they are graphs and not images:
img2 = ColorConvert[img, "HSB"];
img3 = ImageData[img2][[All, All, 3]];
img4 = Transpose[img3];
img5 = Rotate[
ListPlot[Table[
img4[[i]] - .025 i, {i, 1, ImageDimensions[img][[1]], 30}],
PlotRange -> All, Axes -> None, Joined -> True,
PlotStyle -> {{Blue, Thick}},
AspectRatio -> 1/ImageAspectRatio[img]], -90 Degree]; img6 =
ListPlot[Table[
img3[[i]] - .025 i, {i, 1, ImageDimensions[img][[2]], 30}],
PlotRange -> All, Axes -> None, Joined -> True,
PlotStyle -> {{Blue, Thick}}, AspectRatio -> ImageAspectRatio[img]];
ImageAdd[img5, img6]

ERROR

Any idea of how I could "AddGraph"?

(I'm still a beginner)

Anonymous said...

use Rasterize, this will convert a graphic into image
try this:
ImageMultiply[Rasterize[img5], Rasterize[img6]]