对齐多张照片,使内容在同一个地方

Posted

技术标签:

【中文标题】对齐多张照片,使内容在同一个地方【英文标题】:Align multiple photos so contents are at same place 【发布时间】:2021-06-17 07:31:40 【问题描述】:

我有多个这样的图片

还有一张所有其他人都需要同意的主要照片。

我希望在所有照片中,顶行的小方块完全位于同一位置(因为我使用 Photoshop 脚本使用静态坐标对每个方块中心的颜色进行采样)。在许多照片中,相机移动了一点,所以我需要调整它们(主要是垂直)来解决这个问题。你知道有什么方法可以在很多(因为我有 1000 张)照片上轻松完成吗? 我尝试在 Photoshop 中一次打开 30-40,但需要一种方法来放置和保留一些参考点。你知道有什么方法可以做到这一点吗?也许所有打开的文件或类似文件的通用指南?

【问题讨论】:

【参考方案1】:

您可以对齐垂直中心,然后使用代码分配水平中心:

function align_tiny_photos()
 // align and distribute
var idAlgn = charIDToTypeID( "Algn" );
var desc48 = new ActionDescriptor();
var idnull = charIDToTypeID( "null" );
var ref16 = new ActionReference();
var idLyr = charIDToTypeID( "Lyr " );
var idOrdn = charIDToTypeID( "Ordn" );
var idTrgt = charIDToTypeID( "Trgt" );
ref16.putEnumerated( idLyr, idOrdn, idTrgt );
desc48.putReference( idnull, ref16 );
var idUsng = charIDToTypeID( "Usng" );
var idADSt = charIDToTypeID( "ADSt" );
var idAdCV = charIDToTypeID( "AdCV" );
desc48.putEnumerated( idUsng, idADSt, idAdCV );
executeAction( idAlgn, desc48, DialogModes.NO );

var idDstr = charIDToTypeID( "Dstr" );
var desc62 = new ActionDescriptor();
var idnull = charIDToTypeID( "null" );
var ref23 = new ActionReference();
var idLyr = charIDToTypeID( "Lyr " );
var idOrdn = charIDToTypeID( "Ordn" );
var idTrgt = charIDToTypeID( "Trgt" );
ref23.putEnumerated( idLyr, idOrdn, idTrgt );
desc62.putReference( idnull, ref23 );
var idUsng = charIDToTypeID( "Usng" );
var idADSt = charIDToTypeID( "ADSt" );
var idAdCH = charIDToTypeID( "AdCH" );
desc62.putEnumerated( idUsng, idADSt, idAdCH );
executeAction( idDstr, desc62, DialogModes.NO );

使用方法:

align_tiny_photos();

【讨论】:

对actionscript的知识有限表示歉意(顺便说一句,得到了Photoshop CC 2019),但使用它的条件是什么?将它添加到我制作的脚本中,然后在打开多个文件的同时执行它(假设我的主文件第一次打开)?还尝试使用(脚本->将文件加载到堆栈中)将所有文件作为原始图像中的图层打开,但是是否有一种快速的方法可以将每个图层再次保存到单独的文件中(图层保留其文件名,所以猜测可以完成......也许有一个脚本)? 上面的脚本基本上只是一个宏——使用 ScriptListner 插件踢出。然后整理成一个函数。如果选择的层数少于两层,则会出现错误。您可能会修改初始脚本,然后添加上面的代码。或者将它们分开并一个接一个地运行。你面前有图像,而不是我,我不确定你的整个图像处理过程。是的,如果需要,您可以将每一层保存为图像。

以上是关于对齐多张照片,使内容在同一个地方的主要内容,如果未能解决你的问题,请参考以下文章

UiImagePickerController - 多张照片

离子:每张照片/拍摄多张照片后,相机都会要求确认

使用 iOS SDK 将多张照片作为单个帖子上传,例如时间线照片,而不是 Facebook 中的相册

箭头没有显示在反应光滑的 4 多张照片中

facebook graph - 检索多张照片

如何使用 Cordova 相机插件拍摄多张照片