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:

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

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

    ReplyDelete
  3. 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)

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

    ReplyDelete