A set of command line tools (in Java) for manipulating high-throughput sequencing (HTS) data and formats such as SAM/BAM/CRAM and VCF.
Picard is a set of command line tools for manipulating high-throughput sequencing (HTS) data and formats such as SAM/BAM/CRAM and VCF. These file formats are defined in the Hts-specs repository. See especially the SAM specification and the VCF specification.
Note that the information on this page is targeted at end-users. For developers, the source code, building instructions and implementation/development resources are available on GitHub.
The Picard toolkit is open-source under the MIT license and free for all uses.
Enjoy!
The Picard command-line tools are provided as a single executable jar file. You can download the jar file from the Latest Release project page on Github. The file name will be picard.jar.
Open the downloaded package and place the folder containing the jar file in a convenient directory on your hard drive (or server). Unlike C-compiled programs such as Samtools, Picard cannot simply be added to your PATH, so we recommend setting up an environment variable to act as a shortcut.
For the tools to run properly, you must have Java 1.8 installed. To check your java version by open your terminal application and run the following command:
java -version
If the output looks something like java version "1.8.x"
, you are good to go. If not, you may need to update your version; see the Oracle Java website to download the latest JDK.
To test that you can run Picard tools, run the following command in your terminal application, providing either the full path to the picard.jar file:
java -jar /path/to/picard.jar -h
or the environment variable that you set up as a shortcut (here we are using $PICARD
):
java -jar $PICARD -h
You should see a complete list of all the tools in the Picard toolkit. If you don't, read on to the section on Getting Help.
The tools, which are all listed further below, are invoked as follows:
java jvm-args -jar picard.jar PicardToolName OPTION1=value1 OPTION2=value2...
See the Tool Documentation for details on the Picard command syntax and standard options as well as a complete list of tools with usage recommendations, options, and example commands.
Picard is supported through the GATK Forums. Register now and you can ask questions and report problems that you might encounter while using Picard and related tools such as GATK (for source code-related questions, post an issue on Github instead), with the following guidelines:
Before posting to the Forum, please do the following:
When asking a question about a problem, please include the following: