Android ARToolKit - 更改 NFT 示例项目中的参考图像?

Android ARToolKit - Changing the reference images in the NFT sample project?

我一直在修补 ARToolKit 及其示例 Android Studio 项目,看看我可以根据自己的目的修改哪一个。我打开 nftBookProj,它是使用 pinball.jpg 的那个,然后在图像的原点放置一个动画螺旋桨平面和一个 3D 轴。

我注意到 nftBookProj/nftBook/src/main/assets/DataNFT/ 目录有 pinball.isetpinball.fsetpinball.fset3 文件。然后我制作了自己的图像(具有明确的特征、高分辨率、高 dpi 和所有)然后使用 the methods specified in this tutorial,我创建了我自己的一组 reference_1.isetreference_1.fsetreference_1.fset3 文件。然后我将这 3 个文件放在 pinball 文件所在的同一文件夹中。

然后我检查了所有活动和 类 以找出我必须更改的行以使应用程序引用我自己的 reference 文件而不是 pinball 文件。它不在任何 类 中,但我在 /assets/Data/ 文件夹下找到了 markers.dat 文件,它看起来像这样:

# Number of markers
1

# Entries for each marker. Format is:
#
# Name of pattern file (relative to this file)
# Marker type (SINGLE)
# Marker width in millimetres (floating point number)
# Optional tokens:
#     FILTER [x]   Enable pose estimate filtering for the preceding marker
#                  x (optional) specifies the cutoff frequency. Default
#                  value is AR_FILTER_TRANS_MAT_CUTOFF_FREQ_DEFAULT, which
#                  at time of writing, equals 5.0.
# A blank line

../DataNFT/pinball
NFT
FILTER 15.0

然后我将 ../DataNFT/pinball 更改为 ../DataNFT/reference_1,编译项目,运行 它在我的平板电脑上。

然而,当我 运行 代码时,它没有对我制作的图像做出反应,当我检查弹球图像时,它起作用了。这意味着我无法完全更改它所引用的图像。

然后我对所有 类 检查了三次,但我看不到在哪里指示应该使用弹球图像。这个死胡同让我难过,因为我不知道该往哪里看。

有没有人幸运地为 Android 更改 ARToolKits NFTBookProj 中的参考图像?

找到了。在 nftBookApplication class 里面说,如果 assets 文件夹中的文件发生变化,你应该更新 assets 文件夹,你还应该更新 Manifest 中的版本代码。

如果您不打算将应用上传到 google Play 商店,您可以只更新清单中的应用并删除清单中的 versionCodeversionName 行构建 gradle 文件。如果不这样做,gradle 文件中的版本信息将始终覆盖清单中的版本信息。好吧,如果您愿意花一两分钟时间同步它,您也可以使用 gradle 文件中的版本代码。