File:Illusion movie.ogv

From HandWiki

Illusion_movie.ogv(file size: 6.29 MB, MIME type: application/ogg)

This file is from a shared repository and may be used by other projects. The description on its file description page there is shown below.

Summary

Description
English: To see the illusion, do this:

Play the movie (which lasts 1 minute) full screen and stare to the center of the image. After the movie finishes, look away (for example look to a face or to your hands). For few seconds everything you see will appear to distort.

The original idea is not mine, I have seen on the net, BUT this animation file was created by me with this C program.
Türkçe: İllüzyonu görebilmek için, videoyu tam ekranda oynatın ve şeklin merkezine odaklanın. Video bittiğinde farklı bir noktaya ( elinize ya da yüzünüze) bakın. Bir kaç saniye boyunca baktığınız her şey bozulmuş gibi görünecek.
Date
Source Own work by the original uploader
Author Paulnasca at English Wikipedia
Source code
InfoField
//License: Public Domain
//Written by Nasca Octavian PAUL, Tg. Mures, Romania
//in 20060901
/*
Steps to obtain the illusion image:

1) Compile this program and run it

2) Convert the .pgm images to .png images with the bash script:
>>>>>cut<<<<<
for file in *.pgm
do
    echo $file
    pnmtopng $file > "$file.png"
    rm -f $file
done
>>>>>cut<<<<<

3) Convert png images to "output.avi"
mencoder "mf://*.png" -mf fps=20:type=png -ovc lavc -oac copy -o output.avi

4) Convert "output.avi" to ogg theora with:
ffmpeg2theora output.avi

5) Run the animation (full screen) and look and stare in the center of it
After 1 minute, look away and you'll see a very interesting illusion (looks like objects/faces/etc changes their shapes) which last few seconds.
*/

#include <stdio.h>
#include <math.h>

static const int sizex=640;
static const int sizey=480;
static const float freq=80;

static unsigned char data[sizex*sizey];

static unsigned char f(float x,float y,float phase){
    x=fabs(x);
    y=fabs(y);
    float m=sin(phase+(x+y)*freq)*127.0+128;
    return (m);
}

static void make_frame(float t){
    for (int j=0;j<sizey;j++){
	for (int i=0;i<sizex;i++){
	   float x=(i*2-sizex)/(float)sizex;
	   float y=(j*2-sizey)/(float)sizey;
	   float y2=y/sizex*sizey;
	   if ((x*x+y2*y2)<0.1) data[i+j*sizex]=f(x,y,t);
		else data[i+j*sizex]=f(x,y,-t);
	}
    }
}

static void save_frame(char *filename) {
    FILE *f=fopen(filename,"wb");
    if (!f) return;
    fprintf(f,"P5\n%d %d\n255\n\n",sizex,sizey);
    fwrite(data,sizex,sizey,f);
    fclose(f);
}

int main(void) {
    char tmp[100];tmp[99]=0;
    for (int k=0;k<1200;k++){
        make_frame(k*0.5);
	snprintf(tmp,99,"frame%05d.pgm",k);
	printf("%s\n",tmp);

	save_frame(tmp);
    }
    return 0;
}

Licensing

Public domain This work has been released into the public domain by its author, Paulnasca at English Wikipedia. This applies worldwide.
In some countries this may not be legally possible; if so:
Paulnasca grants anyone the right to use this work for any purpose, without any conditions, unless such conditions are required by law.

Original upload log

The original description page was here. All following user names refer to en.wikipedia.
  • 2006-09-01 18:27 Paulnasca 640×480× (6598414 bytes) To see the illusion, do this: Play the movie (which last 1 minute) full screen and stare to the center of the image. After the movie finishes, look away (for example look to a face or to your hands). For few seconds everything you'll see appear to distor

Captions

Add a one-line explanation of what this file represents

Items portrayed in this file

depicts

1 September 2006

File history

Click on a date/time to view the file as it appeared at that time.

Date/TimeDimensionsUserComment
current01:03, 27 December 2017 (6.29 MB)imagescommonswiki>TikmokUser created page with UploadWizard

The following file is a duplicate of this file (more details):

The following page uses this file: