A const may be needed, the following produces the error: PixelPacket *p = AcquireImagePixels(image,0,y,image->columns,1,&image->exception);
while this fixes it: const PixelPacket *p = AcquireImagePixels(image,0,y,image->columns,1,&image->exception);
In other news hopefully soon I'll have an ARToolkit app for reading in jpegs using ImageMagick, and also that app will have some other more exciting attributes.
After I compressed the above video into a WMV I was dissatisfied with how little depth detail there is in the 360 degree vision part - it's the top strip. I initially liked the cleaner single shade look, but now I realize the utility of using a range of colors for depth fields (or IR/thermal imaging also)- it increases the number of colors to represent different depths beyond 256 to a larger number. Earlier I tried using one color channel for higher order bits and another for lower order bits (so the depth could be computed like red*256+green) for a total of 256*256 depth levels (or even 256^3 or 256^4 using alpha), but visually it's a mess.
But visual integrity can be maintained while multiplying that 256 levels by five or a bit more with additional work.
Taking six colors, three of them are pure red, green, blue, and inbetween there is (255,255,0) for yellow and the other two pure combinations of two channels. Between each subsequent set there can be 256 interpolated values, and in the end a color bar like the follow is generated with 1280 different values:
The bottom color bar shows the differences between adjacent values- if the difference was none then it would be black in spots, so my interpolation is verified.
After making all the images I tried out Picasa 3 to produce a collage- the straightforward grid makes the most sense here. Picasa 3 crashed a few times in the collage editor before I was able to get this exported.