数码照片管理系统Damselfly

news2024/9/21 14:36:07

在这里插入图片描述

什么是 Damselfly ?

Damselfly 是一个基于服务器的数码照片管理系统。Damselfly 旨在管理基于文件夹的大型照片集合,特别关注快速搜索和关键字标记工作流程。Damselfly 包含强大的机器学习功能,可帮助您识别照片及其主体,包括人脸检测、物体检测和(使用可选的 Azure 人脸服务帐户)全面面部识别,允许您标记人物一次,并让 Damselfly 识别他们是否出现在其他照片中。Damselfly 还提供了一个桌面/客户端应用程序,可以与您的笔记本电脑或 PC 更紧密地集成,使您可以快速将 Damselfly 中的精选图像同步到本地文件夹,以进行编辑等。

安装

在群晖上以 Docker 方式安装。

在注册表中搜索 damselfly ,选择第一个 webreaper/damselfly,版本选择 latest

本文写作时, latest 版本对应为 4.0.3

Damselfly是基于 C# 开发的应用,不知道是不是集成了机器学习功能的缘故,镜像有点大

在这里插入图片描述

docker 文件夹中,创建一个新文件夹 damselfly,并在其中建三个子文件夹,分别是 configpicturesthumbs

如果用现有的照片库,可以不建 pictures 目录,为了节省空间,老苏还是使用了 PhotoPrism 的照片库

文件夹装载路径说明
docker/damselfly/config/config存放设置
docker/damselfly/thumbs/thumbs存放缩略图
docker/photoprism/photos/pictures照片库

端口

本地端口不冲突就行,不确定的话可以用命令查一下

# 查看端口占用
netstat -tunlp | grep 端口号
本地端口容器端口
63636363

在这里插入图片描述

命令行安装

如果你熟悉命令行,可能用 docker cli 更快捷

# 新建文件夹 damselfly 和 子目录
# 如果用现有照片库,可以不建 pictures 目录
mkdir -p /volume2/docker/damselfly/{config,pictures,thumbs}

# 进入 damselfly 目录
cd /volume2/docker/damselfly

# 运行容器(使用空的图库)
docker run -d \
  --name damselfly \
  --restart unless-stopped \
  -p 6363:6363 \
  -v $(pwd)/config:/config \
  -v $(pwd)/pictures:/pictures \
  -v $(pwd)/thumbs:/thumbs \
  webreaper/damselfly

# 运行容器(使用 PhotoPrism 的照片库)
docker run -d \
  --name damselfly \
  --restart unless-stopped \
  -p 6363:6363 \
  -v $(pwd)/config:/config \
  -v /volume2/docker/photoprism/photos:/pictures \
  -v $(pwd)/thumbs:/thumbs \
  webreaper/damselfly

也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件

version: '3'

services:
  damselfly:
    image: webreaper/damselfly
    container_name: damselfly
    restart: unless-stopped
    ports:
      - 6363:6363
    volumes:
      - ./config:/config
      - ./thumbs:/thumbs
      - /volume2/docker/photoprism/photos:/pictures

然后执行下面的命令

# 新建文件夹 damselfly 和 子目录
# 如果用现有照片库,可以不建 pictures 目录
mkdir -p /volume2/docker/damselfly/{config,pictures,thumbs}

# 进入 damselfly 目录
cd /volume2/docker/damselfly

# 将 docker-compose.yml 放入当前目录

# 一键启动
docker-compose up -d

运行

在浏览器中输入 http://群晖IP:6363 就能看到主界面

在这里插入图片描述

一开始会使用 AI 扫描照片识别面部,所以 CPU 的占用是比较高的

在这里插入图片描述

有的图片感觉识别的还行,不仅识别出 PersonFace,居然还识别出了 Sports ball

在这里插入图片描述

但是有的就差点意思了,就这也能识别出 Face

在这里插入图片描述

所以当你搜索 Face 时,会有一半是不相干的

在这里插入图片描述

sport 倒是都找到了

在这里插入图片描述

多用户

第一次进设置,会提示创建管理员账号

在这里插入图片描述

登录

在这里插入图片描述

新建用户

关于角色、权限,可以看官方文档:https://github.com/Webreaper/Damselfly/blob/master/docs/Multi-user.md

参考文档

Webreaper/Damselfly: Damselfly is a server-based Photograph Management app. The goal of Damselfly is to index an extremely large collection of images, and allow easy search and retrieval of those images, using metadata such as the IPTC keyword tags, as well as the folder and file names. Damselfly includes support for object/face detection, and face-recognition.
地址:https://github.com/webreaper/damselfly

Damselfly – Server based Digital Asset Management
地址:https://damselfly.info/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/467451.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

使用Socks5代理保障Windows网络安全

摘要:Socks5代理是一种在Windows系统中保障网络安全的有效方法。本文将详细介绍什么是Socks5代理,以及如何在Windows系统中使用Socks5代理来加强网络安全。同时,我们还将探讨如何编写代码来使用Socks5代理来保障应用程序的网络安全。 正文&am…

报表VS分析:为什么报表做不完?老板到底想要什么?

各位数据的朋友,大家好,我是老周道数据,和你一起,用常人思维数据分析,通过数据讲故事。 上一讲和大家讲了分析模型中的战斗机——财务分析模型。通过奥威BI软件的行计算模型来开发财务分析报表异常地简单,…

安装Django

1. 在物理环境安装Django Python官方的PyPi仓库为我们提供了一个统一的代码托管仓库,所有的第三方库,甚至你自己写的开源模块,都可以发布到这里,让全世界的人分享下载 pip是最有名的Python包管理工具 。提供了对Python包的查找、…

Linux 动态库的制作与使用

目录 动态库的制作和使用 动态库的制作和使用 原始结构如下: 先进入calc文件,并生成与位置无关的.o文件 接着生成动态文件库,使用ll指令可以看到,库名为绿色,linux中绿色的文件一般都是可执行文件 将其生成的lib…

如何快速搭建一个SpringBoot项目

前面我们了解了SpringBoot背景和特点,本节我们主要介绍如何快速构建一个SpringBoot项目,以此来提升日常开发效率。 SpringBoot是搭建应用的手脚架,由Spring公司的核心团队在2013年开始研发、2014年4月发布第一个版本的全新开源的轻量级框架。…

如何平衡倾斜摄影的三维模型轻量化数据文件大小和质量效果?

如何平衡倾斜摄影的三维模型轻量化数据文件大小和质量效果? 倾斜摄影超大场景的三维模型数据文件大小的具体范围取决于多种因素,如原始数据的复杂度、轻量化处理的方式和压缩算法等。一般而言,经过轻量化处理后,数据文件大小可以减…

centos7安装nginx及uwsgi部署django项目

1、安装配置uwsgi pip install uwsgi 2、在项目根目录下创建image_ocr_uwsgi.ini配置文件 [uwsgi] # 对外提供http服务的端口 http :9000 # 用于和nginx进行数据交互的端口 socket 127.0.0.1:8001 # django程序的主目录 chdir /home/image_process/image_ocr/image_ocr #…

【计算机架构】响应时间和吞吐量 | 相对性能 | 计算 CPU 时间 | 指令技术与 CPI | T=CC/CR, CC=IC*CPI

目录 0x00 响应时间和吞吐量(Response Time and Throughput) 0x01 相对性能(Relative Performance) 0x02 执行时间测量(Measuring Execution Time) 0x03 CPU 时钟(Clocking) 0x…

【RabbitMQ】| 狮子带你(超详细)原生Java操作兔子队列

目录 一. 🦁 前言二. 🦁 原生Java操作RabbitMQⅠ. 简单模式1. 添加依赖2. 编写生产者3. 编写消费者 Ⅱ. 工作队列模式1. 编写生产者2. 编写消费者3. 实现 Ⅲ. 发布订阅模式1. 编写生产者2. 编写消费者 Ⅳ. 路由模式1. 编写生产者2. 编写消费者 Ⅴ. 通配符…

SpringCloud源码之Spring Cloud Common核心接口说明

spring cloud commons spring cloud提供的通用抽象包,组件的实现基本上都依赖于当前包的接口定义实现功能,下面就是梳理一下当前包中都提供了哪些比较重要的接口 1. 服务注册 1.1 DiscoveryClient DiscoveryClient 是一个顶级的接口类,用…

node项目的建立

文章目录 1.node项目的建立1.1项目初始化1.2 安装express1.3 初始化服务器 2.配置跨域2.1安装cors2.2cors的引入(app.js中) 3.初始化路由3.1新建文件3.2初始路由模块3.3app.js注册3.4 在postman测试 4.抽离路由处理模块3.1 在router_handler新建user.js3…

为什么LC谐振频率附近信号会被放大

这个是LC低通滤波电路, 它的增益曲线是这样的 很多同学不理解为什么谐振频率附近信号会被放大,今天就来聊一聊为什么谐振频率附近信号会被放大。 看到这个LC低通滤波电路,假设输入信号源内阻为Rs,L和C为理想电感和电容&#xff0…

Jmeter(五)_CSV Data参数化,Beanshell

一.CSV Data Set Config 准备好一个txt文件,写入如下内容,第一行可以不写,写了的话也会作为一组数据被运行: 然后把后缀名改为CSV,这样一个参数化文件就准备好了 然后打开jmeter,在需要使用这个参数化…

数据库系统-数据库查询实现算法

文章目录 一、一趟扫描算法1.1 算法概述1.2 算法逻辑&物理实现1.2.1 逻辑层面1.2.2 物理层面1.2.2.1 P11.2.2.2 P21.2.2.3 P31.2.2.4 P4 1.3 迭代器构造查询实现算法1.4 关系操作的一趟扫描算法1.4 基于索引的查询实现算法 二、两趟扫描算法2.1 两趟算法基本思想2.2 多路归…

Clickhouse分布式表引擎(Distributed)写入核心原理解析

Clickhouse分布式表引擎(Distributed)写入核心原理解析 Clickhouse分布式表引擎(Distributed)写入核心原理解析Clickhouse分布式表引擎(Distributed)查询核心原理解析 Distributed表引擎是分布式表的代名…

vue打包并部署到nginx上

一、打包vue项目 打包的命令依据项目的配置可能会有所不同,打包的命令可以在package.json中查看 项目中vue.config.js中的配置如下: proxy关系到我们项目部署到nginx上需要配置对应的反向代理 publicPath关系到我们部署时是否需要配置子路径 默认情况…

基于公共信箱的全量消息实现

作者 | 百度消息中台团队 导读 消息中台为百度App以及厂内百度系产品提供即时通讯的能力,提供包括私聊、群聊、聊天室、直播弹幕等用户沟通场景,并帮助业务通过消息推送触达用户。百度App存在需要以『低用户打扰』的形式触达全量用户的场景,而…

AcWing第 96 场周赛

竞赛 - AcWing 一、完美数 4876. 完美数 - AcWing题库 1、题目 如果一个正整数能够被 2520 整除,则称该数为完美数。 给定一个正整数 n,请你计算 [1,n]范围内有多少个完美数。 输入格式 一个整数 n。 输出格式 一个整数,表示 [1,n] 范…

C++:Article : 链接器(三):库与可执行文件的生成

链接器:库与可执行文件 1. 静态库1.1 静态链接下,可执行文件如何生成 2. 动态库2.1 动态库特点以及与静态库使用方式差异2.2 动态库和静态库使用时间 3. load-time dynamic linking(加载时动态链接)3.1:阶段一&#xf…

【工具】FFmpeg|超大视频本地有损压缩,500MB变25MB(支持 Windows、Linux、macOS)

参考: 如何将一分钟长的1080p视频压缩至5MB以内?-知乎-滔滔清风近期HEVC扩展备用安装方法-B站-悲剧天下 总共三个步骤,安装FFmpeg、运行指令、打开视频。 亲测 500MB 变 25MB。 1 安装FFmpeg 对于不需要看教程可以自行完成安装的同学们&am…