一个可独立浏览的大型缩略图数据库?

一个可独立浏览的大型缩略图数据库?

我用谷歌搜索了一段时间,但无济于事。我有大量的照片存储在多个媒体中,并备份在云端。Shotwell 生成的缩略图非常大,非常适合了解照片的主题和质量。缩略图根据时间戳和原始文件夹分组组织。我希望能够浏览完整的缩略图集合,即使程序无法访问完整的真实照片集合(事实上,我没有在单个存储设备中保存完整的照片集合)。这对我来说非常方便,原因有几个;我可以从具有不同名称主文件夹的几台 PC 上浏览它们,我可以根据它们的存储位置对它们进行标记等。整个缩略图集合相当小,我可以轻松地使用 rsync 进行更新。但是,如果 Shotwell 找不到实际的照片,它会自动将相应的缩略图移动到丢失的图片标题下,并且它们的结构会丢失。

我曾尝试将缩略图直接导入 Shotwell,但原始时间戳和标签不见了。一种可能的解决方法是,根据时间戳自动生成缩略图和生成文件夹结构,但在陷入其中之前,我认为最好在这里问一个问题。您是否知道任何技巧或调整——或者您可以推荐任何特定的程序——让我可以浏览(大量)缩略图集合而无需访问原始文件?我感觉这种程序一定在某个地方使用,但正如我所说,我找不到任何程序。谢谢!

答案1

好的,我用一个生成缩略图数据库的脚本解决了这个问题。必须安装 ImageMagick 才能运行该脚本。该脚本需要两个参数,指定源照片路径和目标路径。它以递归方式搜索源中的 JPG 文件,并生成具有用户定义宽度和质量的正确方向的缩略图(如果您愿意,只需将 JPG 更改为其他格式;它可以处理 IM 处理的所有文件格式)。它生成两个缩略图数据库:

(1)目标中的数据库:缩略图根据原始 EXIF 日期按 YYYY/MM/DD 文件夹结构排列。

(2)Target.Mirror 中的数据库:缩略图按文件夹结构进行组织,该结构精确反映了其源的结构。

您可以轻松更改脚本以仅生成一个数据库。我在这里仅粘贴脚本的核心,省略路径检查和操作、参数处理、回显消息、注释等。源、目标和镜像路径必须以“/”结尾。

#!/bin/bash
# The following variables have to be initialized
# Source=<path_to_source/>
# Target=<path_to_target/>
# Mirror=<Target.mirror/>
# Width=<Thumbnail width> (experiment with 368, 416, 512, 1024)
# Quality=<Thumbnail quality> (0% to 100%: 95% is fine, try 75%)

   shopt -s globstar
   cd "$Source"
   for f in **
   do
      if ! ([[ -d "$f" ]]) && ([[ "$f" == *"JPG" ]] || [[ "$f" == *"jpg" ]])
      then
        echo -e "           ${\e[0;32m}" $Source$f${\e[0m}
        Date=$(identify -format "%[EXIF:DateTimeOriginal]" $f)
        FolderName="$Target${Date:0:4}/${Date:5:2}/${Date:8:2}"                     
        if ! [[ -d $FolderName ]]
        then
          mkdir -p "$FolderName"
        fi
        Filename="${f##*/}"
        convert "$Source$f" -thumbnail $Width -quality $Quality -auto-orient \
        "$FolderName/$Filename"
 # to preserve profiles such as EXIF data, replace line above with the following:
 #
 # convert "$Source$f" -resize $Width -quality $Quality -auto-orient
 # "$FolderName/$Filename"
 #
 # it takes a bit longer and thumbnails are bigger in size -- profiles use up
 # to 60K
        if ! [[ "${f%/*}" == "$f" ]]
        then
          if ! [[ -d "$Mirror""${f%/*}" ]]
          then
            mkdir -p "$Mirror${f%/*}"
          fi
        fi
        cp "$FolderName/$Filename" "$Mirror$f"
      fi
   done

该数据库非常轻量(宽度设置为 416,质量设置为 95%,数据库大小约为原始数据库的 1%);它的副本可以轻松保存在笔记本或 Android 手机中,Shotwell 可以快速浏览它。如果使用新源(但具有相同的目标和镜像)再次运行脚本,现有数据库将更新。我能说什么呢——感谢 Gnu 和 Linux!

答案2

F-Spot 是一款很好的图像检索工具 - 尽管可能和 Shot 一样好。

我有一个名为 Ubuntu Studio 的 Ubuntu 版本,还有一个普通的 Ubuntu 发行版。

借助 Ubuntu Studio,您可以改进图像、声音和视频程序的目录,同时又不会忘记是什么让 Ubuntu 成为一个伟大的操作系统。

研究该选项 - Ubuntu 和 Ubuntu Studio 的双启动(除非您想将 Ubuntu Studio 安装到 VirtualBox 中或通过 Live-CD 安装,以便在安装前试用)。

你可能会感到惊喜。

史蒂夫

相关内容