IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    ⛱️ Photoview:一款可以部署在NAS上的照片管理器,支持人脸识别,还有免费App可用!

    诺多发表于 2024-07-02 23:20:27
    love 0

    Photoview

    Photoview 是一个简单且用户友好的照片库,专为摄影师设计,旨在提供一种简单快捷的方式来浏览包含数以千计高分辨照片或视频的数据库。你可以将系统中的照片和视频所在目录加入到 Photoview 中,扫描器会自动索引你的媒体并开始生成缩略图,以使浏览速度超快。扫描媒体后,它们会显示在网站上,其组织方式与文件系统相同。

    🎭 功能特性

    • 与文件系统紧密集成:本地文件系统上的图片会自动显示在系统中,目录映射为相册。
    • 用户管理:每个用户在本地文件系统上创建,并关联一个路径,该用户可以访问该路径中的照片。
    • 分享功能:相册和单个媒体可轻松通过公共链接共享,该链接可选用密码保护。
    • 专为摄影优化:支持 RAW 文件格式和 EXIF 解析,满足摄影师的需求。
    • 视频支持:支持多种常见视频格式,并自动针对网络优化。
    • 人脸识别:自动检测照片中的人脸,并按人分组。
    • 高性能:自动生成缩略图,在屏幕上显示照片时优先加载缩略图。全屏模式下,缩略图会显示,直到高分辨率图像加载完成。
    • 安全保障:所有媒体资源受 Cookie 令牌保护,所有密码经过哈希处理,API 采用严格的 CORS 策略。

    🌾 颜值展示

    1. 时间线,按时间排列当前用户的所有照片和视频

    Photoview

    2. 相册,展示相册文件夹,进入后展示当前相册的照片和视频

    Photoview
    Photoview

    3. 地点,将照片展示在拍摄地点上,快速回归自己的旅程

    Photoview

    4. 人物,系统自动人脸识别出照片中的人物,并按人物分类照片

    Photoview

    5. 设置,可以设置系统的主题、语言、扫描开关以及用户管理等

    Photoview

    6. 移动应用,目前还仅支持iOS系统,连接你的NAS,免费使用

    Photoview
    Photoview

    🎨 安装Photoview

    Photoview 支持使用源码和Docker进行部署,老样子,笔者强烈建议使用Docker进行部署,快准狠!

    1. Photoview的地点定位功能需要使用到mapbox的API,请先通过下面的网址注册并获取Token
    https://account.mapbox.com/access-tokens/
    
    1. Photoview需要使用到数据库,支持sqlite、mysql和postgres,个人使用建议直接sqlite即可,简单方便。然后将下面的内容粘贴到compose.yml文件中,并创建好conf.yml文件
    version: '3.9'
    services:
      photoview:
        image: viktorstrate/photoview:2
        container_name: photoview
        restart: unless-stopped
        stop_grace_period: 10s
        ports:
          - "8000:80" ## HTTP port (host:container)
        security_opt:
          - seccomp:unconfined
          - apparmor:unconfined
        environment:
          PHOTOVIEW_DATABASE_DRIVER: sqlite
          # PHOTOVIEW_SQLITE_PATH: /home/photoview/database/photoview.db
          # PHOTOVIEW_LISTEN_IP: "photoview"
          PHOTOVIEW_LISTEN_PORT: 80
          PHOTOVIEW_MEDIA_CACHE: "/home/photoview/media-cache"
          # - GODEBUG=asyncpreemptoff=1
          # 地点功能需要,第一步中的网址获取
          MAPBOX_TOKEN: your_token
        # devices:
          ## Intel QSV 显卡使用下面设置
          # - "/dev/dri:/dev/dri"
          ## Nvidia CUDA显卡使用下面设置
          # - "/dev/nvidia0:/dev/nvidia0"
          # - "/dev/nvidiactl:/dev/nvidiactl"
          # - "/dev/nvidia-modeset:/dev/nvidia-modeset"
          # - "/dev/nvidia-nvswitchctl:/dev/nvidia-nvswitchctl"
          # - "/dev/nvidia-uvm:/dev/nvidia-uvm"
          # - "/dev/nvidia-uvm-tools:/dev/nvidia-uvm-tools"
          ## Video4Linux Video Encode Device (h264_v4l2m2m)
          # - "/dev/video11:/dev/video11"
        volumes:
          - "/etc/localtime:/etc/localtime:ro" ## use local time from host
          - "/etc/timezone:/etc/timezone:ro"   ## use timezone from host
          - "/share/Container/photoview/cache:/home/photoview/media-cache"
          # 照片所在的目录
          - "/share/photos/demo:/photos:ro"
          - "/share/Container/photoview/database:/home/photoview/database"
    
    1. 执行下面命令启动Docker容器
    docker compose up -d
    

    等待几秒钟,然后在浏览器中打开http://ip:8000,你应该就能看到Photoview的页面了。初次启动需要先进行初始化设置,设置你的用户名、密码和照片所在路径(设置为/photos),即可开始使用。

    Photoview
    ⏬ 获取Photoview移动端

    Photoview移动端APP目前仅支持iOS系统,可以直接在App Store搜索Photoview或在笔者公众号私信【PV】即可快速获取下载链接。
    Photoview

    原创不易,如果觉得此文对你有帮助,不妨点赞+收藏+关注,你的鼓励是我持续创作的动力!

    高等精灵实验室



沪ICP备19023445号-2号
友情链接