Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v1.114.0 face import feature cause unnamed person thumbnails lost #12454

Closed
2 of 3 tasks
wind-snow-moon opened this issue Sep 8, 2024 · 0 comments · Fixed by #13042
Closed
2 of 3 tasks

v1.114.0 face import feature cause unnamed person thumbnails lost #12454

wind-snow-moon opened this issue Sep 8, 2024 · 0 comments · Fixed by #13042

Comments

@wind-snow-moon
Copy link

wind-snow-moon commented Sep 8, 2024

The bug

I tested the new feature of face import and found one issue.
In the test photo library, some of photos include exif info about face regions and name.

I enable 'Enable face import' and run 'Force Re-scan All Library Files' command , all people in the library are recoganized correctly and person thumbnails are showed
1

And than run 'FACIAL RECOGNITION -> ALL' command, only named people thumbnails can be showed and unnamed person thumbnails are lost
2

After that, regardless of whether 'Enable face import' is enable or disable, run 'Force Re-scan All Library Files' command or 'FACE DETECTION -> ALL' command, all people in the library are recoganized correctly and person thumbnails are showed again.
1

The OS that Immich Server is running on

Windows11 Docker

Version of Immich Server

v.1.114.0

Version of Immich Mobile App

v.1.113.0

Platform with the issue

  • Server
  • Web
  • Mobile

Your docker-compose.yml content

#
# WARNING: Make sure to use the docker-compose.yml of the current release:
#
# https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml
#
# The compose file on main may not be compatible with the latest release.
#

name: immich

services:
  immich-server:
    container_name: immich_server
    #image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release}
    image: ghcr.nju.edu.cn/immich-app/immich-server:${IMMICH_VERSION:-release}
    # extends:
    #   file: hwaccel.transcoding.yml
    #   service: cpu # set to one of [nvenc, quicksync, rkmpp, vaapi, vaapi-wsl] for accelerated transcoding
    extends:
      file: hwaccel.transcoding.yml
      service: nvenc # set to one of [nvenc, quicksync, rkmpp, vaapi, vaapi-wsl] for accelerated transcoding
    volumes:
      # Do not edit the next line. If you want to change the media storage location on your system, edit the value of UPLOAD_LOCATION in the .env file
      - ${UPLOAD_LOCATION}:/usr/src/app/upload
      - /etc/localtime:/etc/localtime:ro
      - ${MY_PHOTO_LIB}:/photolib
    env_file:
      - .env
    ports:
      - 12345:3001
    depends_on:
      - redis
      - database
    restart: always
    healthcheck:
      disable: false

  immich-machine-learning:
    container_name: immich_machine_learning
    # For hardware acceleration, add one of -[armnn, cuda, openvino] to the image tag.
    # Example tag: ${IMMICH_VERSION:-release}-cuda
    #image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release}
    image: ghcr.nju.edu.cn/immich-app/immich-machine-learning:${IMMICH_VERSION:-release}-cuda
    # extends: # uncomment this section for hardware acceleration - see https://immich.app/docs/features/ml-hardware-acceleration
    #   file: hwaccel.ml.yml
    #   service: cpu # set to one of [armnn, cuda, openvino, openvino-wsl] for accelerated inference - use the `-wsl` version for WSL2 where applicable
    extends: # uncomment this section for hardware acceleration - see https://immich.app/docs/features/ml-hardware-acceleration
      file: hwaccel.ml.yml
      service: cuda # set to one of [armnn, cuda, openvino, openvino-wsl] for accelerated inference - use the `-wsl` version for WSL2 where applicable    
    volumes:
    #  - model-cache:/cache
      - ${CACHE_LOCATION}:/cache
    env_file:
      - .env
    ports:
      - 12340:3003
    restart: always
    healthcheck:
      disable: false

  redis:
    container_name: immich_redis
    image: docker.m.daocloud.io/redis:6.2-alpine@sha256:e3b17ba9479deec4b7d1eeec1548a253acc5374d68d3b27937fcfe4df8d18c7e
    healthcheck:
      test: redis-cli ping || exit 1
    restart: always

  database:
    container_name: immich_postgres
    image: docker.m.daocloud.io/tensorchord/pgvecto-rs:pg14-v0.2.0@sha256:90724186f0a3517cf6914295b5ab410db9ce23190a2d9d0b9dd6463e3fa298f0
    environment:
      POSTGRES_PASSWORD: ${DB_PASSWORD}
      POSTGRES_USER: ${DB_USERNAME}
      POSTGRES_DB: ${DB_DATABASE_NAME}
      POSTGRES_INITDB_ARGS: '--data-checksums'
    volumes:
      # Do not edit the next line. If you want to change the database storage location on your system, edit the value of DB_DATA_LOCATION in the .env file
      - ${DB_DATA_LOCATION}:/var/lib/postgresql/data
    healthcheck:
      test: pg_isready --dbname='${DB_DATABASE_NAME}' --username='${DB_USERNAME}' || exit 1; Chksum="$$(psql --dbname='${DB_DATABASE_NAME}' --username='${DB_USERNAME}' --tuples-only --no-align --command='SELECT COALESCE(SUM(checksum_failures), 0) FROM pg_stat_database')"; echo "checksum failure count is $$Chksum"; [ "$$Chksum" = '0' ] || exit 1
      interval: 5m
      start_interval: 30s
      start_period: 5m
    command: ["postgres", "-c", "shared_preload_libraries=vectors.so", "-c", 'search_path="$$user", public, vectors', "-c", "logging_collector=on", "-c", "max_wal_size=2GB", "-c", "shared_buffers=512MB", "-c", "wal_compression=on"]
    restart: always

volumes:
  model-cache:

Your .env content

# You can find documentation for all the supported env variables at https://immich.app/docs/install/environment-variables

# The location where your uploaded files are stored
UPLOAD_LOCATION=./library
# The location where your database files are stored
DB_DATA_LOCATION=./postgres
CACHE_LOCATION = ./model-cache
MY_PHOTO_LIB = ./PhotoLib

# To set a timezone, uncomment the next line and change Etc/UTC to a TZ identifier from this list: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List
TZ=Asia/Shanghai

# The Immich version to use. You can pin this to a specific version like "v1.71.0"
IMMICH_VERSION=release

# Connection secret for postgres. You should change it to a random password
# Please use only the characters `A-Za-z0-9`, without special characters or spaces
DB_PASSWORD=postgres

# The values below this line do not need to be changed
###################################################################################
DB_USERNAME=postgres
DB_DATABASE_NAME=immich

Reproduction steps

  1. In the test photo library, some of photos include exif info about face regions and name.

  2. Enable 'Enable face import' and run 'Force Re-scan All Library Files' command, all people in the library are recoganized correctly and person thumbnails are showed.
    1

  3. Run 'FACIAL RECOGNITION -> ALL' command.

  4. Only named people thumbnails can be showed and unnamed person thumbnails are lost.
    2

  5. Regardless of whether 'Enable face import' is enable or disable, run 'Force Re-scan All Library Files' command or 'FACE DETECTION -> ALL' command, all people in the library are recoganized correctly and person thumbnails are showed again.
    1

Relevant log output

No response

Additional information

No response

@wind-snow-moon wind-snow-moon changed the title v1.114.0 face import feature cause unnamed person thumbnails are lost v1.114.0 face import feature cause unnamed person thumbnails lost Sep 8, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
1 participant