目录

  • Proj.4 升级新版本5.x和6.x
    • 0、缘起
    • 1、5.x和6.x更新情况简述
      • PROJ 5.x 更新
      • PROJ 6.x 更新
    • 2、从PROJ.4向新版本迁移
      • 迁移到5.x版本
      • 迁移到6.x版本

Proj.4 升级新版本5.x和6.x

0、缘起

今天(2019年5月30日)去编译最新版本的GDAL,发现其对Proj.4的依赖已经要求为6.x版本了。于是去https://github.com/OSGeo/proj.4看了一下最新的代码,又去https://proj4.org/看了一下文档,感觉5.x和6.x的更新挺大的,有必要测试一下,看工作中的项目是不是要升级过来。

1、5.x和6.x更新情况简述

我没有仔细去看5.x版本的代码,仅看了一下最新的Proj.4 版本6的代码,与早前使用的4.9.3版本简单对比了一下,感觉区别还是挺大的,这里列出几点我关注的地方的对比。

1、新版本改用C++编写,相比4.9版本代码量增加了不少,功能也多了不少。代码层次结构清晰了许多,比如各种转换算法都在src/transformations目录下可以找到,各种投影方法相关的算法都在src/projections目录可以找到。

2、支持了从WKT/WKT2字符串和EPSG代码直接创建坐标系对象,也支持导出WKT字符串。老版本中记录EPSG坐标系定义的的nad/epsg被弃用,改用SQLite数据库来记录(在data/sql目录下保存着用于生成proj.db文件的SQL脚本),不过新版本需要依赖SQLite3。

3、新版的实现使用了缓存机制,在创建操作坐标系对象及搜索查找等都有用到。代码可见 src/iso19111/factory.cpp、src/iso19111/crs.cpp、src/iso19111/coordinateoperation.cpp、

src/iso19111/coordinateoperation.cpp 等文件。

4、新版添加了proj_math.h、math.cpp,添加了pj_hypot等函数,这解决了一些编译问题(因为之前版本projects.h中声明了hypot函数,但这个函数在非_WIN32环境中也可能是存在math.h中的)。

以下主要翻译自:PROJ.4 News

PROJ 5.x 更新

此版本的 PROJ 对系统的大地测量功能 (主要是) 引入了一些重要的扩展和改进。

引入新功能的主要驱动因素是动态参考框架的出现、高精度全球导航卫星系统的使用日益增加以及对精确坐标变换的相关需求的增加。虽然旧版本的 PROJ 包含一些大地测量功能, 但新框架为将 PROJ 转变为通用地理空间坐标转换引擎奠定了基础。

内部架构也有了许多变化和改进。到目前为止,这些改进都遵循现有的编程接口。但是这个过程已经显示出需要简化和减少代码库,以支持持续的主动开发。

新的主要版本号使该项目在名称上留下了一些难题。在产品的大部分使用寿命中,它被称为PROJ.4,但由于我们现在已达到版本5,因此名称不再与版本号对齐。

因此,我们决定将名称与版本号和该版本分离,然后将产品简称为PROJ。为了表彰软件的历史,我们将PROJ.4作为组织项目的名称。同一个项目团队也会生成datum-grid 包。

综上所述:

  • PROJ.4项目提供产品PROJ,现在版本为5.0.0。
  • PROJ的基础组件是库libproj。
  • 其他PROJ组件包括应用程序proj,它为libproj提供命令行界面。
  • PROJ.4项目还分发了基准网格(datum-grid)包,在编写本文时,它是1.6.0版本。

5.0.0 更新

  • 推出新的API在proj.h

    • 新版API增加了4D空间坐标转换功能
    • 新API中的函数使用proj_命名空间(名称前缀)
    • 新API中的数据类型使用PJ_命名空间(名称前缀)
  • 引入“转换管道”(transformation pipelines)的概念,可以通过 菊花链 的方式简化坐标操作,可以对坐标进行复杂的大地转换。

  • 采用 OGC/ISO-19100 地理空间标准系列术语。关键定义是:

    • 在通用层面上,坐标操作是基于从一个坐标参考系统到另一个坐标参考系统的一对一关系的坐标变换。
    • 变换(transformation )是一种坐标操作,其中两个坐标参考系统基于不同的基准,例如,从全局参考框架改变到区域框架。
    • 转换(conversion )是一种坐标操作,其中两个坐标参考系统都基于相同的数据,例如,坐标单位的变化。
    • 投影是从椭球坐标系到平面坐标系的坐标转换。虽然投影只是根据标准进行的转换, 但它们在 PROJ 中被视为单独的实体, 因为它们占库中绝大多数操作。
  • 新操作

    • 管线操作 The pipeline operator (pipeline)
    • 变换 Transformations
      • 霍默特变换 Helmert transform (helmert)
      • 霍纳实数和复数的多项式评估 (horner)
      • Horizontal gridshift (hgridshift)
      • Vertical gridshift (vgridshift)
      • 莫洛金斯基变换 Molodensky transform (molodensky)
      • Kinematic gridshift with deformation model (deformation)
    • 转换 Conversions
      • 单位转换 Unit conversion (unitconvert)
      • 轴向交换 Axis swap (axisswap)
    • 投影 Projections
      • 中央圆锥投影 Central Conic projection (ccon)
  • 新的“自由格式”(free format)选项,运行在指定key/value键值对时候通过空白字符进行分割标记,例如proj = merc lat_0 = 45

  • 添加到init-files的元数据,可以通过proj.h中新的API函数proj_init_info()读取它们。

  • 添加了具有ITRF转换参数的ITRF2000,ITRF2008和ITRF2014初始化文件,包括板块运动模型参数。

  • 添加椭球参数到GSK2011,PZ90和"danish"。后者类似于已经支持的andrae椭球体,但长半轴略微不同。

  • 添加哥本哈根本初子午线.

  • 将EPSG数据库更新至9.2.0版。

  • Geodesic库已更新至1.49.2-c版。

  • 对分析性偏导数的支持已被移除。

  • 改善了Winkel Tripel和Aitoff的表现。

  • pj_has_inverse()函数引入proj_api.h,使用它检测一个操作是否可反转,而不是检测P->inv是否存在。

  • ABI版本号更新为13:0:0。

  • 删除了对Windows CE的支持。

  • 删除了VB6 COM接口。

5.1.0 更新

  • 添加函数proj_errno_string()proj.h
  • 验证管道步骤之间的单位,并确保转换的完整性。
  • 在没有参数的情况下调用cct和gie程序时打印帮助。
  • CITATION文件添加到源码发行。
  • 添加了Web墨卡托操作。
  • 提高了赤道附近(4326)向spherical Mercator(3857)前向转换的数值精度。
  • 为cct添加了--skip-lines选项。
  • 始终对输入NaN 处返回Nan值。
  • 移除没有使用的src/org_proj4_Projections.h文件。
  • Java Native Interface绑定已更新
  • 水平和垂直网格移位操作扩展到时域(temporal domain)。

5.2.0 更新

  • 在unitconvert中增加了对deg,rad和grad的支持。
  • 当没有另外指定时,假设+t_epoch为时间输入。
  • 添加了逆拉格朗日投影。
  • 添加-multiplier选项到vgridshift。
  • 添加等地球投影。(等地球地图投影是用于世界地图的新的等面积假圆柱投影)
  • 为gie添加了“require_grid”选项。
  • 将 Helmert 变换的+transpose选项替换为+convention。从现在开始应当显示指定convertion使用,使用+transpose选项将返回错误。
  • 改进的逆spherical Mercator投影数值精度
  • 当前cct会将前向输入的坐标,转发到输出流。 (#1111)

PROJ 6.x 更新

PROJ6 进行了广泛的更改, 以增加其功能范围, 从具有所谓 "早期绑定" 大地测量基准转换功能的制图投影引擎, 到更完整的库, 支持坐标变换和坐标参考系统。

作为其他增强功能的基础, PROJ 现在包括由 iso-19111:2019 标准/OGC 抽象规范主题 2: "按坐标引用" 的模型的 C++ 实现, 用于大地测量参照框 (基准), 坐标参考系统和协调操作。这些大地测量对象的构造和查询可通过新的 C++ API 进行, 并且在很大程度上可以从 C API 中的绑定中访问。

这些大地测量对象可以从 OGC 已知文本格式 (WKT) 以不同的变体导入和导出: ESRI WKT、GDAL WKT 1、WKT2:2015 (ISO 191.2: 2015) 和 WKT2:2018 (ISO 19162: 2018)。还支持从 PROJ 字符串导入和导出 crs 对象。此功能以前在 GDAL 软件库中可用 (WKT2 支持除外, 这是一项新功能), 现在是 PROJ 不可或缺的一部分。

现在, sqlite3 数据库文件 proj.db 中提供了一个统一的大地测量对象数据库、坐标参考系统及其元数据以及这些 CRS 之间的坐标操作。这包括从 IOMP EPSG 数据集 (v9.6.0 版本)、法国国家测绘机构大地测量登记册和 ESRI 投影引擎数据库中导入的定义。PROJ 现在是此 CRS 和坐标操作数据库的 "OSGeo C stack" 中的参考软件, 而以前此功能分布在 PROJ、GDAL 和歌词地理, 并使用 CSV 或其他基于特定文本的格式。

添加了考虑到元数据 (如使用区域和准确性) 的后期绑定坐标操作功能。这可以在许多情况下避免过去使用 WGS84 作为中间系统的要求, 这可能会导致不必要的精度损失, 或者在无法转换到 WGS84 的情况下有时是无法实现的。这些后期绑定功能现在由 proj_create_crs_to_crs() 函数和 cs2cs 实用程序使用。

添加了一个新的命令行实用程序 projinfo 来查询有关数据库的大地测量对象的信息, 从 WKT 字符串和 PROJ 字符串导入和导出大地测量对象, 并显示两个 CRS(坐标参考系统) 之间可用的坐标操作。

6.0.0 更新

  • 公开接口中移除projects.h(当前仅作为内部接口)(#835)
  • 不推荐使用proj_api.h接口。头文件仍然可用,但将在下一个主要版本的PROJ中删除。现在需要定义ACCEPT_USE_OF_DEPRECATED_PROJ_API_H宏接口才可用。 (#836)
  • 删除了对nmake构建系统的支持。(#838)
  • 删除对proj_def.dat 默认文件的支持。 (#201)
  • 构建PROJ需要支持C++11编译器。
  • 构建添加对SQLite 3.7的依赖。(#1175)
  • 添加 projinfo 命令行程序。
  • 添加一些用于处理ISO19111功能函数的到proj.h。(#1175)
  • 更新了cs2cs以使用后期绑定特性。(#1182)
  • 移除 nad2bin 程序。现在可以在proj-datumgrid仓库中查看。
  • 在proj中删除了对Chebyshev多项式的支持
  • 从proj.h中移除proj_geocentric_latitude() API
  • 更改proj行为:现在只允许投影的初始化 (#1162)
  • 更改tmerc行为:现在默认扩展横轴墨卡托算法 (etmerc)。旧的实现可以通过添加 +approx参数(#404)
  • 更改行为:默认椭球现在设置为GRS80 (之前是WGS84) (#1210)
  • 允许在 PROJ_LIB 环境变量中使用多个目录 (#1218)
  • 添加Lambert Conic Conformal (2SP Michigan) 投影 (#1142)
  • 添加 Bertin1953 投影 (#1133)
  • 添加Tobler-Mercator 投影 (#1153)
  • 添加Molodensky-Badekas 变换 (#1160)
  • 添加push 和pop 坐标操作 (#1250)
  • 添加+t_obs 参数,从helmert 和deformation中 (#1264)
  • 添加+dt 参数到deformation中,用于替换移除的 +t_obs (#1264)

6.1.0 更新

  • 包含 QGIS 中定义的椭球 (#1137)
  • 添加 -k ellipsoid 选项到 projinfo (#1338)
  • cs2cs支持4D坐标 (#1355)
  • WKT2 解析:更新到OGC 18-010r6 (#1360 #1366))
  • 更新googletest内部版本到v1.8.1 (#1361)
  • 数据库更新:EPSG v9.6.2 (#1462), IGNF v3.0.3, ESRI 10.7.0 并添加operation_version列(#1368)
  • 添加proj_normalize_for_visualization() 尝试应用大多数 GIS 应用和 PROJ <6 使用的轴序 (#1387)
  • 添加 noop(空)操作 (#1391)
  • 用户设置的路径优先于 PROJ_LIB 搜索路径 (#1398)
  • 缩小数据库大小 (#1438)
  • 添加对compoundCRS 和concatenatedOperation组件命名的支持 (#1441)

2、从PROJ.4向新版本迁移

以下内容主要来自Version 4 to 5/6 API Migration。

迁移到5.x版本

这是希望将代码迁移到使用PROJ 5的开发人员的过渡指南。

背景

原文太长,这里简单抽取一部分。

  • 1、之前老的API两个坐标参考系统之间的任何转换都必须通过未明确定义的WGS84框架进行中转,新的API取消了对PROJ中转换的限制。虽然任然可以进行这种类型的转换,但是在多数情况下,有更好的替代方案。

  • 2、如果你只关心到米级精度,那么旧的API是够用的。但是WGS84并非真实世界的基础,其它一切都可以通过WGS84进行转换的观点是有缺陷的。并且这里说的WGS84是6个实现中的哪一个呢?

  • 3、对许多坐标系统而言,转换到WGS84,在旧系统之间可能变换精度在厘米级。

  • 4、hub(这里说的就是把所有坐标之间的转换都通过WGS84做中转)框架("基准")概念本身没有大问题。但世界本质是4维的,为了获得大地测量精确变换,可能需要在四个维度下计算,新的API允许这样做。

  • 旧的API下,坐标从坐标系A转换到坐标系B的过程,需要从A变换到WGS84(反算),再从WGS84变换到B(正算)

    $ echo 300000 6100000 | cs2cs +proj=utm +zone=33 +ellps=GRS80 +to +proj=utm +zone=32 +ellps=GRS80
    683687.87       6099299.66 0.00
  • 新的命令行工具cct使用新的API,所以同样的转换可能结果不一样

    $ echo 300000 6100000 0 0 | cct +proj=pipeline +step +inv +proj=utm +zone=33 +ellps=GRS80 +step +proj=utm +zone=32 +ellps=GRS80
    683687.8667   6099299.6624    0.0000    0.0000

代码示例

这里显示了旧API和新API之间的区别,并举了几个例子。 下面我们用两个不同的API实现相同的程序。 程序从命令行读取输入经度和纬度,并使用墨卡托投影将它们转换为投影坐标。

我们首先编写PROJ v.4的程序:

#include <proj_api.h>main(int argc, char **argv) {projPJ pj_merc, pj_longlat;double x, y;// 创建坐标参考系对象if (!(pj_longlat = pj_init_plus("+proj=longlat +ellps=clrk66")) )return 1;if (!(pj_merc = pj_init_plus("+proj=merc +ellps=clrk66 +lat_ts=33")) )return 1;// PROJ.4 API 默认的经纬度都是使用弧度值while (scanf("%lf %lf", &x, &y) == 2) {x *= DEG_TO_RAD; /* 经度 */y *= DEG_TO_RAD; /* 纬度 */// 进行坐标转换p = pj_transform(pj_longlat, pj_merc, 1, 1, &x, &y, NULL );printf("%.2f\t%.2f\n", x, y);}pj_free(pj_longlat);pj_free(pj_merc);return 0;
}

使用PROJ v.5实现的相同程序:

// 使用新的头文件
#include <proj.h>main(int argc, char **argv) {PJ *P;PJ_COORD c;// 创建墨卡托投影坐标系P = proj_create(PJ_DEFAULT_CTX, "+proj=merc +ellps=clrk66 +lat_ts=33");if (P==0)return 1;while (scanf("%lf %lf", &c.lp.lam, &c.lp.phi) == 2) {// 度转弧度c.lp.lam = proj_torad(c.lp.lam);c.lp.phi = proj_torad(c.lp.phi);// 进行坐标转换(正算)c = proj_trans(P, PJ_FWD, c);printf("%.2f\t%.2f\n", c.xy.x, c.xy.y);}proj_destroy(P);
}

新旧API函数对照表

旧版 API 函数新版 API 函数
pj_fwdproj_trans()
pj_invproj_trans()
pj_fwd3proj_trans()
pj_inv3proj_trans()
pj_transformproj_trans_array or proj_trans_generic
pj_initproj_create()
pj_init_plusproj_create()
pj_freeproj_destroy()
pj_is_latlongproj_angular_output()
pj_is_geocentproj_angular_output()
pj_get_defproj_pj_info()
pj_latlong_from_projNo equivalent
pj_set_finderNo equivalent
pj_set_searchpathNo equivalent
pj_deallocate_gridsNo equivalent
pj_strerrnoNo equivalent
pj_get_errno_refproj_errno()
pj_get_releaseproj_info()

迁移到6.x版本

这是希望迁移代码以使用PROJ 6的开发人员的过渡指南。

代码示例

这里显示了旧API和新API之间的区别,并举了几个例子。 下面我们用两个不同的API实现相同的程序。 程序从命令行读取输入经度和纬度,并使用墨卡托投影将它们转换为投影坐标。

我们首先编写PROJ v.4的程序:

#include <proj_api.h>main(int argc, char **argv) {projPJ pj_merc, pj_longlat;double x, y;// 创建坐标参考系对象if (!(pj_longlat = pj_init_plus("+proj=longlat +ellps=clrk66")) )return 1;if (!(pj_merc = pj_init_plus("+proj=merc +ellps=clrk66 +lat_ts=33")) )return 1;// PROJ.4 API 默认的经纬度都是使用弧度值while (scanf("%lf %lf", &x, &y) == 2) {x *= DEG_TO_RAD; /* 经度 */y *= DEG_TO_RAD; /* 纬度 */// 进行坐标转换p = pj_transform(pj_longlat, pj_merc, 1, 1, &x, &y, NULL );printf("%.2f\t%.2f\n", x, y);}pj_free(pj_longlat);pj_free(pj_merc);return 0;
}

使用PROJ v.6实现的相同程序:

#include <proj.h>main(int argc, char **argv) {PJ *P;PJ_COORD c;/* 注意: 在PROJ 6中强烈建议不要使用 PROJ 格式字符串来定义 CRS ,因为 PROJ 格式字符串*//* 不是描述 CRS 的一种好方式,准确说来是其对大地基准的描述不够详细。                 *//* 使用权威机构提供的坐标系代码(例如"EPSG:4326", etc...)或者WKT字符串来创建,将能够 *//* 充分利用PROJ的“transformation engine”来确定两个CRS直接的最佳转换方式          */P = proj_create_crs_to_crs(PJ_DEFAULT_CTX,"+proj=longlat +ellps=clrs66","+proj=merc +ellps=clrk66 +lat_ts=33",NULL);if (P==0)return 1;{/* 对于特定的使用情况下(转换前后坐标系已知),这是没有必要的。                *//* proj_normalize_for_visualization() 确保预期坐标顺序和由 proj_trans() *//* 返回的顺序是 大地坐标系下先经度后纬度,投影坐标系下先东向后北向             *//* 如果不是使用上面的PROJ字符串,而是使用 "EPSG:XXXX" 代码,这可能是必要的。  */PJ* P_for_GIS = proj_normalize_for_visualization(C, P);if( 0 == P_for_GIS )  {proj_destroy(P);return 1;}proj_destroy(P);P = P_for_GIS;}while (scanf("%lf %lf", &c.lp.lam, &c.lp.phi) == 2) {/* 不需要转换到弧度 */c = proj_trans(P, PJ_FWD, c);printf("%.2f\t%.2f\n", c.xy.x, c.xy.y);}proj_destroy(P);
}

新旧API函数对照表

旧版 API 函数新版 API 函数
pj_fwdproj_trans()
pj_invproj_trans()
pj_fwd3proj_trans()
pj_inv3proj_trans()
pj_transformproj_create_crs_to_crs() + (proj_normalize_for_visualization() +) proj_trans(), proj_trans_array() or proj_trans_generic()
pj_initproj_create() / proj_create_crs_to_crs()
pj_initproj_create() / proj_create_crs_to_crs()
pj_freeproj_destroy()
pj_is_latlongproj_get_type()
pj_is_geocentproj_get_type()
pj_get_defproj_pj_info()
pj_latlong_from_projNo direct equivalent, but can be accomplished by chaining proj_create(), proj_crs_get_horizontal_datum() and proj_create_geographic_crs_from_datum()
pj_set_finderproj_context_set_file_finder()
pj_set_searchpathproj_context_set_search_paths()
pj_deallocate_gridsNo equivalent
pj_strerrnoNo equivalent
pj_get_errno_refproj_errno()
pj_get_releaseproj_info()

转载于:https://www.cnblogs.com/oloroso/p/10955620.html

查看全文
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

相关文章

  1. 使用Visual Studio Code开发AngularJS Step by Step

    Step1&#xff1a;安装Node.js &#xff08;下载地址&#xff1a;https://nodejs.org/en/&#xff09; Step2&#xff1a;安装TypeScript definition file&#xff08;tsd文件&#xff0c;因为VSC把所有Javascript都当作Typescript&#xff0c;也就是说VSC会用Typescript的编译…...

    2024/4/20 14:56:54
  2. NullInjectorError:No provider for ....

    添加一个Loading服务时报了错&#xff1a; 解决&#xff1a; 总结 添加的服务要引入app.module.ts&#xff0c;并加入到providers中...

    2024/4/20 14:56:53
  3. Angular 依赖注入的一个常见错误 NullInjectorError, No provider for XXX

    测试代码&#xff1a; export abstract class GreetingService {abstract greet(name: string): string;}加了Injectable注解的实现类&#xff1a; import { Injectable } from angular/core; import { GreetingService } from ./greeting.service;Injectable({ providedIn: …...

    2024/4/21 15:28:42
  4. 双眼皮手术前可以吃饭吗

    ...

    2024/4/21 15:28:41
  5. 开过双眼皮天天戴墨镜

    ...

    2024/4/21 15:28:40
  6. 双眼皮拆线戴美瞳

    ...

    2024/4/21 15:28:40
  7. 几大主流的前端框架(UI/JS)框架

    如今的前端已经不再像以前一样就是简单的写写页面和调调样式而已&#xff0c;现在的前端越来越复杂&#xff0c;知识点越来越丰富。 要做WEB前端&#xff0c;就需要知道前端到底是什么&#xff0c;需要学习那些知识&#xff1b;前端至少要懂的三个部分&#xff1a;HTML&#x…...

    2024/4/24 17:46:29
  8. 做完双眼皮多久带美瞳

    ...

    2024/4/21 15:28:38
  9. 重庆割双眼皮比较好的医生

    ...

    2024/4/21 15:28:37
  10. 双眼皮拆线后红

    ...

    2024/4/21 15:28:35
  11. Angular 原理图 Schematics 学习 - 动手开发一个实际的例子

    当 ng add 命令向项目中添加某个库时&#xff0c;就会运行原理图。ng generate 命令则会运行原理图&#xff0c;来创建应用、库和 Angular 代码块。 一些术语&#xff1a; 规则 在原理图 中&#xff0c;是指一个在文件树上运行的函数&#xff0c;用于以指定方式创建、删除或…...

    2024/4/21 15:28:36
  12. ActivityThread一些浅薄理解

    ActivityThread的main方法解读 public static void main(String[] args) {......//创建LooperLooper.prepareMainLooper();//创建ActivityThread示例并绑定ActivityThread thread = new ActivityThread();thread.attach(false);//获取Handler示例,ActivityThread内部创建了一个…...

    2024/4/21 15:28:33
  13. 割双眼皮眼角针浅

    ...

    2024/4/21 15:28:33
  14. 双眼皮深好还是浅

    ...

    2024/4/21 15:28:32
  15. 有没有人去艺星整双眼皮的

    ...

    2024/4/21 15:28:31
  16. angular学习笔记(三十)-指令(9)-一个简单的指令示例

    学了前面这么多关于指令的知识,现在就用指令来写一个小组件:expander 这个组件的功能就是点击开展菜单,再点击收起菜单: ↑↓点击展开收起 下面来看它的代码: html: <!DOCTYPE html> <html ng-app"expanderModule"> <head><title>20.9 指令-…...

    2024/4/21 15:28:29
  17. Angular随笔第二课

    一. 列表表格以及其它迭代型元素 ng-repeat 可能是最有用的angular指令了&#xff0c;它可以根据集合中的项目一次创建一组元素的多份拷贝。不管在什么地方&#xff0c;只要你想创建一组事物的列表&#xff0c;你就可以使用这条指令。 比方说&#xff1a;我们正在为老师们编写…...

    2024/4/21 15:28:29
  18. 全切双眼皮吧深浅

    ...

    2024/4/19 18:50:51
  19. 改变双眼皮宽窄的办法

    ...

    2024/4/20 14:57:03
  20. 多层眼皮变双眼皮微调是怎么做的

    ...

    2024/4/20 11:56:41

最新文章

  1. 最佳三款员工电脑行为监控软件评选

    企业对员工生产力和数据安全的关注不断增加&#xff0c;员工电脑行为监控软件成为了许多企业不可或缺的工具。 这些软件不仅可以帮助企业管理者实时监测员工的电脑使用情况&#xff0c;还可以防止数据泄露和滥用公司资源。 然而&#xff0c;市面上有数不胜数的员工电脑行为监控…...

    2024/4/25 20:53:18
  2. 梯度消失和梯度爆炸的一些处理方法

    在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言&#xff0c;在此感激不尽。 权重和梯度的更新公式如下&#xff1a; w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...

    2024/3/20 10:50:27
  3. 【自学记录5】【Pytorch2.0深度学习从零开始学 王晓华】第五章 基于Pytorch卷积层的MNIST分类实战

    5.1.2 PyTorch2.0中卷积函数实现详解 1、torch.nn.Conv2d in_channels3: 输入的通道数&#xff0c;对应图像的3个颜色通道。 out_channels10: 输出的通道数&#xff0c;即卷积后我们想要得到的特征图的数量。 kernel_size3: 卷积核的大小&#xff0c;这里使用的是3x3的卷积核…...

    2024/4/25 11:30:22
  4. 【JavaScript 漫游】【049】ES6 规范中对象的扩展

    文章简介 本篇文章为【JavaScript 漫游】专栏的第 049 篇文章&#xff0c;对 ES6 规范中对象的扩展知识点进行了记录。具体包括&#xff1a; 属性的简洁表示法属性名表达式方法的 name 属性属性的可枚举性和遍历super 关键字对象的扩展运算符链判断运算符Null 判断运算符新增…...

    2024/4/23 21:45:44
  5. 【外汇早评】美通胀数据走低,美元调整

    原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...

    2024/4/25 11:51:20
  6. 【原油贵金属周评】原油多头拥挤,价格调整

    原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...

    2024/4/25 18:39:24
  7. 【外汇周评】靓丽非农不及疲软通胀影响

    原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...

    2024/4/25 18:38:39
  8. 【原油贵金属早评】库存继续增加,油价收跌

    原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...

    2024/4/25 18:39:23
  9. 【外汇早评】日本央行会议纪要不改日元强势

    原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...

    2024/4/25 18:39:22
  10. 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响

    原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...

    2024/4/25 18:39:22
  11. 【外汇早评】美欲与伊朗重谈协议

    原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...

    2024/4/25 18:39:20
  12. 【原油贵金属早评】波动率飙升,市场情绪动荡

    原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...

    2024/4/25 16:48:44
  13. 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试

    原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...

    2024/4/25 13:39:44
  14. 【原油贵金属早评】市场情绪继续恶化,黄金上破

    原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...

    2024/4/25 18:39:16
  15. 【外汇早评】美伊僵持,风险情绪继续升温

    原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...

    2024/4/25 18:39:16
  16. 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势

    原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...

    2024/4/25 0:00:17
  17. 氧生福地 玩美北湖(上)——为时光守候两千年

    原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...

    2024/4/25 4:19:21
  18. 氧生福地 玩美北湖(中)——永春梯田里的美与鲜

    原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...

    2024/4/25 18:39:14
  19. 氧生福地 玩美北湖(下)——奔跑吧骚年!

    原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...

    2024/4/25 18:39:12
  20. 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!

    原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...

    2024/4/25 2:10:52
  21. 「发现」铁皮石斛仙草之神奇功效用于医用面膜

    原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...

    2024/4/25 18:39:00
  22. 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者

    原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...

    2024/4/25 13:19:01
  23. 广州械字号面膜生产厂家OEM/ODM4项须知!

    原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...

    2024/4/25 18:38:58
  24. 械字号医用眼膜缓解用眼过度到底有无作用?

    原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...

    2024/4/25 18:38:57
  25. 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...

    解析如下&#xff1a;1、长按电脑电源键直至关机&#xff0c;然后再按一次电源健重启电脑&#xff0c;按F8健进入安全模式2、安全模式下进入Windows系统桌面后&#xff0c;按住“winR”打开运行窗口&#xff0c;输入“services.msc”打开服务设置3、在服务界面&#xff0c;选中…...

    2022/11/19 21:17:18
  26. 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。

    %读入6幅图像&#xff08;每一幅图像的大小是564*564&#xff09; f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...

    2022/11/19 21:17:16
  27. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...

    win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面&#xff0c;在等待界面中我们需要等待操作结束才能关机&#xff0c;虽然这比较麻烦&#xff0c;但是对系统进行配置和升级…...

    2022/11/19 21:17:15
  28. 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...

    有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows&#xff0c;请勿关闭计算机”的提示&#xff0c;要过很久才能进入系统&#xff0c;有的用户甚至几个小时也无法进入&#xff0c;下面就教大家这个问题的解决方法。第一种方法&#xff1a;我们首先在左下角的“开始…...

    2022/11/19 21:17:14
  29. win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...

    置信有很多用户都跟小编一样遇到过这样的问题&#xff0c;电脑时发现开机屏幕显现“正在配置Windows Update&#xff0c;请勿关机”(如下图所示)&#xff0c;而且还需求等大约5分钟才干进入系统。这是怎样回事呢&#xff1f;一切都是正常操作的&#xff0c;为什么开时机呈现“正…...

    2022/11/19 21:17:13
  30. 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...

    Win7系统开机启动时总是出现“配置Windows请勿关机”的提示&#xff0c;没过几秒后电脑自动重启&#xff0c;每次开机都这样无法进入系统&#xff0c;此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一&#xff1a;开机按下F8&#xff0c;在出现的Windows高级启动选…...

    2022/11/19 21:17:12
  31. 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...

    有不少windows10系统用户反映说碰到这样一个情况&#xff0c;就是电脑提示正在准备windows请勿关闭计算机&#xff0c;碰到这样的问题该怎么解决呢&#xff0c;现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法&#xff1a;1、2、依次…...

    2022/11/19 21:17:11
  32. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...

    今天和大家分享一下win7系统重装了Win7旗舰版系统后&#xff0c;每次关机的时候桌面上都会显示一个“配置Windows Update的界面&#xff0c;提示请勿关闭计算机”&#xff0c;每次停留好几分钟才能正常关机&#xff0c;导致什么情况引起的呢&#xff1f;出现配置Windows Update…...

    2022/11/19 21:17:10
  33. 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...

    只能是等着&#xff0c;别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚&#xff0c;只能是考虑备份数据后重装系统了。解决来方案一&#xff1a;管理员运行cmd&#xff1a;net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...

    2022/11/19 21:17:09
  34. 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?

    原标题&#xff1a;电脑提示“配置Windows Update请勿关闭计算机”怎么办&#xff1f;win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢&#xff1f;一般的方…...

    2022/11/19 21:17:08
  35. 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...

    关机提示 windows7 正在配置windows 请勿关闭计算机 &#xff0c;然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;关机提示 windows7 正在配…...

    2022/11/19 21:17:05
  36. 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...

    钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...

    2022/11/19 21:17:05
  37. 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...

    前几天班里有位学生电脑(windows 7系统)出问题了&#xff0c;具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面&#xff0c;长时间没反应&#xff0c;无法进入系统。这个问题原来帮其他同学也解决过&#xff0c;网上搜了不少资料&#x…...

    2022/11/19 21:17:04
  38. 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...

    本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法&#xff0c;并在最后教给你1种保护系统安全的好方法&#xff0c;一起来看看&#xff01;电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中&#xff0c;添加了1个新功能在“磁…...

    2022/11/19 21:17:03
  39. 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...

    许多用户在长期不使用电脑的时候&#xff0c;开启电脑发现电脑显示&#xff1a;配置windows更新失败&#xff0c;正在还原更改&#xff0c;请勿关闭计算机。。.这要怎么办呢&#xff1f;下面小编就带着大家一起看看吧&#xff01;如果能够正常进入系统&#xff0c;建议您暂时移…...

    2022/11/19 21:17:02
  40. 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...

    配置windows update失败 还原更改 请勿关闭计算机&#xff0c;电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;配置windows update失败 还原更改 请勿关闭计算机&#x…...

    2022/11/19 21:17:01
  41. 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...

    不知道大家有没有遇到过这样的一个问题&#xff0c;就是我们的win7系统在关机的时候&#xff0c;总是喜欢显示“准备配置windows&#xff0c;请勿关机”这样的一个页面&#xff0c;没有什么大碍&#xff0c;但是如果一直等着的话就要两个小时甚至更久都关不了机&#xff0c;非常…...

    2022/11/19 21:17:00
  42. 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...

    当电脑出现正在准备配置windows请勿关闭计算机时&#xff0c;一般是您正对windows进行升级&#xff0c;但是这个要是长时间没有反应&#xff0c;我们不能再傻等下去了。可能是电脑出了别的问题了&#xff0c;来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...

    2022/11/19 21:16:59
  43. 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...

    我们使用电脑的过程中有时会遇到这种情况&#xff0c;当我们打开电脑之后&#xff0c;发现一直停留在一个界面&#xff1a;“配置Windows Update失败&#xff0c;还原更改请勿关闭计算机”&#xff0c;等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢&#xff0…...

    2022/11/19 21:16:58
  44. 如何在iPhone上关闭“请勿打扰”

    Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...

    2022/11/19 21:16:57