nadermx / backgroundremover

Background Remover lets you Remove Background from images and video using AI with a simple command line interface that is free and open source.
https://www.backgroundremoverai.com
MIT License
6.7k stars 558 forks source link

[BUG] Unable to install via pip due to corrupt package #39

Closed CHJ85 closed 1 year ago

CHJ85 commented 2 years ago

Hi there. The Pillow package is corrupt. I installed the python3-willow package, hoping it'd solve the problem and allow me to install backgroundremover, because willow essentially includes pillow. Do you think you could fix this in the installation script so that it recognizes either? I doubt there's an issue on my end, but here's my terminal output:

❯ sudo pip3 install backgroundremover
Collecting backgroundremover
  Using cached backgroundremover-0.1.9-py3-none-any.whl
Collecting hsh>=1.1.0
  Using cached hsh-1.1.0-py2.py3-none-any.whl (9.0 kB)
Requirement already satisfied: pymatting>=1.1.1 in /usr/local/lib/python3.10/dist-packages (from backgroundremover) (1.1.8)
Collecting Pillow==8.1.1
  Using cached Pillow-8.1.1.tar.gz (45.0 MB)
  Preparing metadata (setup.py) ... done
Requirement already satisfied: filelock>=3.0.12 in /usr/local/lib/python3.10/dist-packages (from backgroundremover) (3.8.0)
Collecting more-itertools==8.7.0
  Using cached more_itertools-8.7.0-py3-none-any.whl (48 kB)
Collecting ffmpeg-python
  Using cached ffmpeg_python-0.2.0-py3-none-any.whl (25 kB)
Requirement already satisfied: torchvision>=0.8.1 in /usr/local/lib/python3.10/dist-packages (from backgroundremover) (0.13.1)
Requirement already satisfied: scikit-image>=0.17.2 in /usr/local/lib/python3.10/dist-packages (from backgroundremover) (0.19.3)
Requirement already satisfied: numpy>=1.19.4 in /usr/local/lib/python3.10/dist-packages (from backgroundremover) (1.21.6)
Requirement already satisfied: tqdm>=4.51.0 in /usr/local/lib/python3.10/dist-packages (from backgroundremover) (4.64.0)
Requirement already satisfied: filetype>=1.0.7 in /usr/local/lib/python3.10/dist-packages (from backgroundremover) (1.1.0)
Requirement already satisfied: six==1.16.0 in /usr/lib/python3/dist-packages (from backgroundremover) (1.16.0)
Collecting moviepy==1.0.3
  Using cached moviepy-1.0.3-py3-none-any.whl
Collecting certifi>=2021.5.30
  Using cached certifi-2022.6.15-py3-none-any.whl (160 kB)
Requirement already satisfied: urllib3==1.26.6 in /usr/local/lib/python3.10/dist-packages (from backgroundremover) (1.26.6)
Requirement already satisfied: torch>=1.7.0 in /usr/local/lib/python3.10/dist-packages (from backgroundremover) (1.12.1)
Requirement already satisfied: waitress>=1.4.4 in /usr/local/lib/python3.10/dist-packages (from backgroundremover) (2.1.2)
Requirement already satisfied: PySocks>=1.7.1 in /usr/lib/python3/dist-packages (from backgroundremover) (1.7.1)
Requirement already satisfied: scipy>=1.5.4 in /usr/local/lib/python3.10/dist-packages (from backgroundremover) (1.7.3)
Requirement already satisfied: gdown>=3.13.0 in /usr/local/lib/python3.10/dist-packages (from backgroundremover) (4.5.1)
Requirement already satisfied: requests>=2.24.0 in /usr/lib/python3/dist-packages (from backgroundremover) (2.25.1)
Requirement already satisfied: idna>=3.2 in /usr/lib/python3/dist-packages (from backgroundremover) (3.3)
Requirement already satisfied: charset-normalizer>=2.0.4 in /usr/local/lib/python3.10/dist-packages (from backgroundremover) (2.1.0)
Requirement already satisfied: proglog<=1.0.0 in /usr/local/lib/python3.10/dist-packages (from moviepy==1.0.3->backgroundremover) (0.1.10)
Collecting imageio-ffmpeg>=0.2.0
  Using cached imageio_ffmpeg-0.4.7-py3-none-manylinux2010_x86_64.whl (26.9 MB)
Requirement already satisfied: imageio<3.0,>=2.5 in /usr/local/lib/python3.10/dist-packages (from moviepy==1.0.3->backgroundremover) (2.21.2)
Collecting decorator<5.0,>=4.0.2
  Using cached decorator-4.4.2-py2.py3-none-any.whl (9.2 kB)
Requirement already satisfied: beautifulsoup4 in /usr/lib/python3/dist-packages (from gdown>=3.13.0->backgroundremover) (4.10.0)
Requirement already satisfied: commandlines in /usr/local/lib/python3.10/dist-packages (from hsh>=1.1.0->backgroundremover) (0.4.1)
Requirement already satisfied: numba!=0.49.0 in /usr/local/lib/python3.10/dist-packages (from pymatting>=1.1.1->backgroundremover) (0.56.0)
Requirement already satisfied: PyWavelets>=1.1.1 in /usr/local/lib/python3.10/dist-packages (from scikit-image>=0.17.2->backgroundremover) (1.3.0)
Requirement already satisfied: tifffile>=2019.7.26 in /usr/local/lib/python3.10/dist-packages (from scikit-image>=0.17.2->backgroundremover) (2022.8.12)
Requirement already satisfied: networkx>=2.2 in /usr/local/lib/python3.10/dist-packages (from scikit-image>=0.17.2->backgroundremover) (2.8.6)
Requirement already satisfied: packaging>=20.0 in /usr/local/lib/python3.10/dist-packages (from scikit-image>=0.17.2->backgroundremover) (21.3)
Requirement already satisfied: typing-extensions in /usr/local/lib/python3.10/dist-packages (from torch>=1.7.0->backgroundremover) (4.3.0)
Requirement already satisfied: future in /usr/lib/python3/dist-packages (from ffmpeg-python->backgroundremover) (0.18.2)
Collecting imageio<3.0,>=2.5
  Using cached imageio-2.21.1-py3-none-any.whl (3.4 MB)
  Using cached imageio-2.21.0-py3-none-any.whl (3.4 MB)
  Using cached imageio-2.20.0-py3-none-any.whl (3.4 MB)
  Using cached imageio-2.19.5-py3-none-any.whl (3.4 MB)
  Using cached imageio-2.19.3-py3-none-any.whl (3.4 MB)
  Using cached imageio-2.19.2-py3-none-any.whl (3.4 MB)
  Using cached imageio-2.19.1-py3-none-any.whl (3.4 MB)
  Using cached imageio-2.19.0-py3-none-any.whl (3.4 MB)
  Using cached imageio-2.18.0-py3-none-any.whl (3.4 MB)
  Using cached imageio-2.17.0-py3-none-any.whl (3.4 MB)
  Using cached imageio-2.16.2-py3-none-any.whl (3.3 MB)
  Using cached imageio-2.16.1-py3-none-any.whl (3.3 MB)
  Using cached imageio-2.15.0-py3-none-any.whl (3.3 MB)
  Using cached imageio-2.14.1-py3-none-any.whl (3.3 MB)
  Using cached imageio-2.14.0-py3-none-any.whl (3.3 MB)
  Using cached imageio-2.13.5-py3-none-any.whl (3.3 MB)
  Using cached imageio-2.13.4-py3-none-any.whl (3.3 MB)
  Using cached imageio-2.13.3-py3-none-any.whl (3.3 MB)
  Using cached imageio-2.13.2-py3-none-any.whl (3.3 MB)
  Using cached imageio-2.13.1-py3-none-any.whl (3.3 MB)
  Using cached imageio-2.13.0-py3-none-any.whl (3.3 MB)
  Using cached imageio-2.12.0-py3-none-any.whl (3.3 MB)
  Using cached imageio-2.11.1-py3-none-any.whl (3.3 MB)
  Using cached imageio-2.11.0-py3-none-any.whl (3.3 MB)
  Using cached imageio-2.10.5-py3-none-any.whl (3.3 MB)
  Using cached imageio-2.10.4-py3-none-any.whl (3.3 MB)
  Using cached imageio-2.10.3-py3-none-any.whl (3.3 MB)
  Using cached imageio-2.10.2-py3-none-any.whl (3.3 MB)
  Using cached imageio-2.10.1-py3-none-any.whl (3.3 MB)
  Using cached imageio-2.9.0-py3-none-any.whl (3.3 MB)
Requirement already satisfied: setuptools in /usr/lib/python3/dist-packages (from numba!=0.49.0->pymatting>=1.1.1->backgroundremover) (59.6.0)
Requirement already satisfied: llvmlite<0.40,>=0.39.0dev0 in /usr/local/lib/python3.10/dist-packages (from numba!=0.49.0->pymatting>=1.1.1->backgroundremover) (0.39.0)
Requirement already satisfied: pyparsing!=3.0.5,>=2.0.2 in /usr/lib/python3/dist-packages (from packaging>=20.0->scikit-image>=0.17.2->backgroundremover) (2.4.7)
Using legacy 'setup.py install' for Pillow, since package 'wheel' is not installed.
Installing collected packages: Pillow, more-itertools, imageio-ffmpeg, hsh, ffmpeg-python, decorator, certifi, imageio, moviepy, backgroundremover
  Attempting uninstall: Pillow
    Found existing installation: Pillow 9.0.1
    Uninstalling Pillow-9.0.1:
      Successfully uninstalled Pillow-9.0.1
  Running setup.py install for Pillow ... error
  error: subprocess-exited-with-error

  × Running setup.py install for Pillow did not run successfully.
  │ exit code: 1
  ╰─> [178 lines of output]
      running install
      /usr/lib/python3/dist-packages/setuptools/command/install.py:34: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools.
        warnings.warn(
      running build
      running build_py
      creating build
      creating build/lib.linux-x86_64-3.10
      creating build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/ExifTags.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/Image.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/ImageDraw.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/PalmImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/ImageGrab.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/Jpeg2KImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/DdsImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/TiffTags.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/PcxImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/CurImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/XbmImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/ContainerIO.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/PpmImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/IcnsImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/FliImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/PsdImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/ImageWin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/features.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/WalImageFile.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/FpxImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/BlpImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/ImImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/ImageStat.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/DcxImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/TarIO.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/GribStubImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/MicImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/JpegImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/PdfImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/ImageChops.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/ImageSequence.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/GimpPaletteFile.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/PcfFontFile.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/MspImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/GbrImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/MpoImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/PcdImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/ImagePalette.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/BmpImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/ImageTransform.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/FtexImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/ImageMode.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/McIdasImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/GimpGradientFile.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/ImageCms.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/BdfFontFile.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/PngImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/IcoImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/GifImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/IptcImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/__init__.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/Hdf5StubImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/WebPImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/SunImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/ImageFile.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/PaletteFile.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/_binary.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/ImageMorph.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/BufrStubImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/_tkinter_finder.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/ImtImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/PdfParser.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/WmfImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/ImageColor.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/ImageQt.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/PSDraw.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/XpmImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/ImageOps.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/FitsStubImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/__main__.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/ImageTk.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/GdImageFile.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/XVThumbImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/EpsImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/TiffImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/ImageFont.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/PixarImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/ImageEnhance.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/ImagePath.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/ImageShow.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/JpegPresets.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/PyAccess.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/MpegImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/SpiderImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/FontFile.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/ImageMath.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/ImageFilter.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/_util.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/SgiImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/_version.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/ImageDraw2.py -> build/lib.linux-x86_64-3.10/PIL
      copying src/PIL/TgaImagePlugin.py -> build/lib.linux-x86_64-3.10/PIL
      running egg_info
      writing src/Pillow.egg-info/PKG-INFO
      writing dependency_links to src/Pillow.egg-info/dependency_links.txt
      writing top-level names to src/Pillow.egg-info/top_level.txt
      reading manifest file 'src/Pillow.egg-info/SOURCES.txt'
      reading manifest template 'MANIFEST.in'
      warning: no files found matching '*.c'
      warning: no files found matching '*.h'
      warning: no files found matching '*.sh'
      warning: no previously-included files found matching '.appveyor.yml'
      warning: no previously-included files found matching '.coveragerc'
      warning: no previously-included files found matching '.editorconfig'
      warning: no previously-included files found matching '.readthedocs.yml'
      warning: no previously-included files found matching 'codecov.yml'
      warning: no previously-included files matching '.git*' found anywhere in distribution
      warning: no previously-included files matching '*.pyc' found anywhere in distribution
      warning: no previously-included files matching '*.so' found anywhere in distribution
      no previously-included directories found matching '.ci'
      adding license file 'LICENSE'
      writing manifest file 'src/Pillow.egg-info/SOURCES.txt'
      running build_ext

      The headers or library files could not be found for jpeg,
      a required dependency when compiling Pillow from source.

      Please see the install instructions at:
         https://pillow.readthedocs.io/en/latest/installation.html

      Traceback (most recent call last):
        File "/tmp/pip-install-n2w58rcq/pillow_e49785be2a794d05bf5c4eac9eb632c0/setup.py", line 865, in <module>
          setup(
        File "/usr/lib/python3/dist-packages/setuptools/__init__.py", line 153, in setup
          return distutils.core.setup(**attrs)
        File "/usr/lib/python3.10/distutils/core.py", line 148, in setup
          dist.run_commands()
        File "/usr/lib/python3.10/distutils/dist.py", line 966, in run_commands
          self.run_command(cmd)
        File "/usr/lib/python3.10/distutils/dist.py", line 985, in run_command
          cmd_obj.run()
        File "/usr/lib/python3/dist-packages/setuptools/command/install.py", line 68, in run
          return orig.install.run(self)
        File "/usr/lib/python3.10/distutils/command/install.py", line 619, in run
          self.run_command('build')
        File "/usr/lib/python3.10/distutils/cmd.py", line 313, in run_command
          self.distribution.run_command(command)
        File "/usr/lib/python3.10/distutils/dist.py", line 985, in run_command
          cmd_obj.run()
        File "/usr/lib/python3.10/distutils/command/build.py", line 135, in run
          self.run_command(cmd_name)
        File "/usr/lib/python3.10/distutils/cmd.py", line 313, in run_command
          self.distribution.run_command(command)
        File "/usr/lib/python3.10/distutils/dist.py", line 985, in run_command
          cmd_obj.run()
        File "/usr/lib/python3/dist-packages/setuptools/command/build_ext.py", line 79, in run
          _build_ext.run(self)
        File "/usr/lib/python3.10/distutils/command/build_ext.py", line 340, in run
          self.build_extensions()
        File "/tmp/pip-install-n2w58rcq/pillow_e49785be2a794d05bf5c4eac9eb632c0/setup.py", line 702, in build_extensions
          raise RequiredDependencyException(f)
      __main__.RequiredDependencyException: jpeg

      During handling of the above exception, another exception occurred:

      Traceback (most recent call last):
        File "<string>", line 2, in <module>
        File "<pip-setuptools-caller>", line 34, in <module>
        File "/tmp/pip-install-n2w58rcq/pillow_e49785be2a794d05bf5c4eac9eb632c0/setup.py", line 922, in <module>
          raise RequiredDependencyException(msg)
      __main__.RequiredDependencyException:

      The headers or library files could not be found for jpeg,
      a required dependency when compiling Pillow from source.

      Please see the install instructions at:
         https://pillow.readthedocs.io/en/latest/installation.html

      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
  Rolling back uninstall of Pillow
  Moving to /usr/lib/python3/dist-packages/PIL
   from /usr/lib/python3/dist-packages/~IL
  Moving to /usr/lib/python3/dist-packages/Pillow-9.0.1.egg-info
   from /usr/lib/python3/dist-packages/~illow-9.0.1.egg-info
error: legacy-install-failure

× Encountered error while trying to install package.
╰─> Pillow

note: This is an issue with the package mentioned above, not pip.
hint: See above for output from the failure.
~ ❯                                                                         10s
nadermx commented 1 year ago

Just change the requirents to a liver version, or make a pull request with a version that works.

Im very slowly getting around to fixing more bugs

El lun, 24 de oct. de 2022 17:20, Reubenmoss @.***> escribió:

I have the exact same issue. any work around?

— Reply to this email directly, view it on GitHub https://github.com/nadermx/backgroundremover/issues/39#issuecomment-1289703831, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABYACXGHURNSXFNFGYK4P33WE4DR7ANCNFSM6AAAAAAQB7SDGI . You are receiving this because you are subscribed to this thread.Message ID: @.***>

nadermx commented 1 year ago

try newest release https://github.com/nadermx/backgroundremover/releases/tag/v0.2.1

CHJ85 commented 1 year ago

Thank you.