Skip to main content

Create beautiful quicklook movies from the pixel data observed by NASA's Kepler spacecraft.

Project description

Create beautiful quicklook movies from the pixel data observed by NASA’s Kepler spacecraft.

PyPI PyPI Downloads Travis status MIT license DOI ADS Bibcode

K2flix makes it easy to inspect the CCD pixel data obtained by NASA’s Kepler space telescope. The need for this tool arises from the fact that the two-wheeled extended Kepler mission, K2, is affected by new sources of noise – including pointing jitter and foreground asteroids – which are more easily spotted by eye than by algorithm.

This tool takes Kepler’s Target Pixel Files (TPF) as input and turns them into contrast-stretched animated gifs or MPEG-4 movies. These TPF files are publically available from the Kepler archive and the K2 archive.

K2flix can be used both as a command-line tool or using its Python API.


Asteroids commonly pass in front of Kepler/K2 targets. We can use k2flix to create a two-day animation of pixel data to count the number of asteroids whizzing past:

$ k2flix --start 545 --stop 680 --step 1 --fps 12\
k2flix output example

To see many more examples, follow @KeplerBot on Twitter!


If you have a working installation of Python on your system, you can install k2flix using pip:

$ pip install k2flix

Alternatively, you can get the latest version by installing from source:

$ git clone
$ cd k2flix
$ python install

K2flix has been tested under Linux. Get in touch if you encounter issues on OS X or Windows.

Using k2flix

After installation, the k2flix tool will be available on the command line. You can then use it as follows.

Converting a Kepler pixel file to an animated gif:

$ k2flix tpf-file.fits.gz

Converting a Kepler pixel file to an MPEG-4 movie:

$ k2flix -o movie.mp4 tpf-file.fits.gz

K2flix supports reading from web URLs, so you can generate a movie directly from the data archive:

$ k2flix

To see all the options, use the –help argument to see the full usage information:

$ k2flix --help
usage: k2flix [-h] [--output FILENAME] [--start START] [--stop STOP]
              [--step STEP] [--fps FPS] [--dpi DPI] [--min_cut MIN_CUT]
              [--max_cut MAX_CUT] [--min_percent %] [--max_percent %]
              [--cmap CMAP] [--raw] [--flags]
              [--ut | --jd | --mjd | --bkjd | --cadence]
              tpf_filename [tpf_filename ...]

Converts a Target Pixel File (TPF) from NASA's Kepler/K2 spacecraft into an
animated gif (default) or MPEG-4 movie.

positional arguments:
  tpf_filename       path to one or more Kepler Target Pixel Files (TPF)

optional arguments:
  -h, --help         show this help message and exit
  --output FILENAME  .gif or .mp4 output filename (default: gif with the same
                     name as the input file)
  --start START      first frame to show. Give the frame number (default 0),
                     or a Julian Day if --jd/--mjd is set, or a cadence number
                     if --cadence is set.
  --stop STOP        final frame to show. Give the frame number (default: -1),
                     or a Julian Day if --jd/--mjd is set, or a cadence number
                     if --cadence is set.
  --step STEP        spacing between frames (default: show 100 frames)
  --fps FPS          frames per second (default: 15)
  --dpi DPI          resolution of the output in dots per K2 pixel (default:
                     choose a dpi that produces a 440px-wide image)
  --min_cut MIN_CUT  minimum cut level (default: use min_percent)
  --max_cut MAX_CUT  maximum cut level (default: use max_percent)
  --min_percent %    minimum cut percentile (default: 1.0)
  --max_percent %    maximum cut percentile (default: 95)
  --cmap CMAP        matplotlib color map name (default: gray)
  --raw              show the uncalibrated pixel data ('RAW_CNTS')
  --flags            show the quality flags
  --ut               use Universal Time
  --jd               use Julian Day for annotation and --start/--stop
  --mjd              use Modified Julian Day for annotation and --start/--stop
  --bkjd             use Kepler Julian Day for annotation and --start/--stop
  --cadence          use Cadence Number for annotation and --start/--stop


If you use this tool in an academic publication, please include a citation. The code has been registered in the Astrophysics Source Code Library [ascl:1503.001] and the preferred BibTeX entry is:

  author        = {{Barentsen}, G.},
  title         = "{K2flix: Kepler pixel data visualizer}",
  howpublished  = {Astrophysics Source Code Library},
  year          = 2015,
  month         = mar,
  archivePrefix = "ascl",
  eprint        = {1503.001},
  adsurl        = {},
  adsnote       = {Provided by the SAO/NASA Astrophysics Data System},
  doi           = {10.5281/zenodo.15576},
  url           = {}


To report bugs and request features, please use the issue tracker. Code contributions are very welcome.


Copyright 2016 Geert Barentsen. K2flix is free software made available under the MIT License. For details see the LICENSE file.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

k2flix-2.1.0.tar.gz (15.1 kB view hashes)

Uploaded Source

Built Distribution

k2flix-2.1.0-py2.7.egg (24.5 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page