User:AbdealiJK/file-metadata/Dependencies

From Wikimedia Commons, the free media repository
Jump to navigation Jump to search

This page holds information about all the dependencies that file-metadata has and also that catimages used to have. It was initially created at the phabricator task T66838.

Packages used by file-metadata

[edit]
Name PyPI Conda Ubuntu 2.6 2.7 3.3 3.4 3.5 CI Comments
exiftool - yes - - - - - CPAN We are downloading the perl script and running it with perl.
ffmpeg or libav - yes yes - - - - - ffmpeg was removed since Ubuntu trusty. libav is available in all versions. We are using the linux static builds if file-metadata is running on linux, else finding the executable in the PATH, else throw an error.
ZXing - no no - - - - - Travis We download the jar files and run them with java.
numpy yes yes yes not supp-orted yes not supp-orted yes yes Travis Installed from pypi
magic yes yes yes yes yes yes yes yes Travis Note that the python-magic in pypi and Ubuntu are different packages, but we support both.
cv2 no yes yes yes yes v3.x only v3.x only v3.x only buildbot TODO Probably need this for haarcascade human detection
scikit-image yes yes yes not supp-orted yes not supp-orted yes yes Travis This is a replacement for OpenCV, more pythonic, easy to install with pip. Only con is it does not have haarcascades.
pycolorname yes no no no yes yes yes yes CircleCI Installed from pypi
dlib yes yes no no yes Installed from pypi. But needs boost-python
cyvlfeat yes yes no no yes not supp-orted yes yes Travis TODO This is the most probably alternative to SLIC/JSEG ?
OpenCV (own) TODO Do we still need this ?
pywt yes yes, but not supp-orted yes Travis TODO ?
Wand yes yes yes yes yes yes yes yes Travis Installed from PyPI. Prompts to install the apt-get dependency.
appdirs yes yes yes yes yes yes yes yes Travis Installed from pypi
whichcraft yes yes no yes yes yes yes yes Travis Installed from pypi
retry yes yes no yes yes yes yes yes Installed from pypi
pathlib2 yes yes no yes yes yes yes yes Travis Installed from pypi
six yes yes yes yes yes yes yes yes Installed from pypi
backports.lzma yes yes no yes yes - - - Installed from pypi

Packages used by catimages (and not by file-metadata)

[edit]
Name Comments
scipy Was only being used to find FFT Peaks in Edge detection ... A huge dependency for something like that. Would rather implement it myself / find alternative.
cv Deprecated in favor of cv2
pyexiv2 exiftool provides more data and is more stable
gtk Only used to find intersection of rectangles. We can make our own function for this.
music21 The info provided by music21 can be got using exiftool+libav. Hence, it's redundant. Both libav and exiftool are stable and accurate.
pydmtx Not maintained since 2011. Use zxing instead as it provides DataMatrix, QR and 1D barcodes.
zbar Not updated since 2009. Use zxing instead as it provides DataMatrix, QR and 1D Barcodes.
bob + bob.flandmark Use dlib instead. As dlib is easier to install.
yaafe The data got from this is not being used for any analysis right now. Also, probably use librosa instead if needed.
jseg ZIP File - Need better alternative
slic ZIP File - Need better alternative
GI+rsvg+Cairo Using Imagemagick's wand instead, as it also has support for XCF (Gimp) files. ImageMagick internally uses rsvg if it's available, or has it's own implementation if it isn't available.
py_w3c Was used to check SVG's xml. Using python's XML tree parser instead.