Oracle Database 10g:课堂练习II - 学生指南

需积分: 4 2 下载量 109 浏览量 更新于2024-07-30 收藏 5.36MB PDF 举报
"OracleDatabase10g - 数据库管理 - 课堂练习II 学生指南第1册" 本资料是Oracle数据库10g的内部培训教材,由Oracle公司出版,适用于那些希望深入理解Oracle数据库管理的专业人士。这个部分是系列教材的第三部分,旨在通过实践练习帮助学员巩固和深化对Oracle数据库管理的理解。 该文档涵盖了数据库管理的关键概念,包括但不限于数据库创建、数据存储、备份与恢复、性能优化、安全性管理和故障排除等方面。这些内容对于数据库管理员(DBA)来说至关重要,因为它们直接关系到数据库的稳定运行和高效性能。 文档的结构可能包括一系列逐步的练习,每个练习都设计有特定的学习目标,使学员能够亲手操作并体验Oracle数据库的各项功能。例如,可能会涉及到如何使用SQL*Plus进行查询,如何管理表空间以优化存储,如何执行RMAN备份,以及如何设置用户权限和角色等。 此外,文档中可能还包含了一些高级主题,如数据库架构、数据泵导出导入、归档日志模式以及数据库的高可用性解决方案,如Real Application Clusters (RAC)。这些深入的专题讨论有助于学员全面掌握Oracle数据库的复杂性。 请注意,由于这是Oracle的官方内部培训教材,其内容可能包含了一些非公开的技术细节和最佳实践,这些通常不会在公开的文档中提供。使用这份教材时,学员应严格遵守版权规定,仅限于Oracle培训课程内使用,且不得用于商业目的或未经许可的分发。 文档最后指出,Oracle不保证文档中信息的准确性,任何问题应书面通知Oracle University。此外,对于美国政府用户,其使用、修改、复制等权利受到Oracle相应许可协议和/或政府合同条款的约束。 文档中的作者和审稿人是一组经验丰富的Oracle专家,他们的贡献确保了内容的专业性和质量。这些专家包括Tom Best、Maria Billings、Herbert Bradbury等,他们都在Oracle数据库领域有深厚的专业知识。 这份“D17090CN31_SG1_课堂练习2”是Oracle数据库专业人士的一份宝贵学习资源,它不仅提供了理论知识,更强调了实践操作,有助于提升数据库管理技能。
2023-05-24 上传

详细解释一下这段代码,每一句给出详细注解:for idx, image_size in enumerate(image_sizes): mkpts1_, mkpts2_ = superglue_inference(model, cache, fname1, fname2, image_size) if idx == 0: # first size -> ref, #1280 num_sg_matches = len(mkpts1_) if max(cache[fname1][image_size]['h'], cache[fname1][image_size]['w']) != image_size: mkpts1_[:,0] *= cache[fname1][image_size]['w']/cache[fname1][image_size]['w_r'] mkpts1_[:,1] *= cache[fname1][image_size]['h']/cache[fname1][image_size]['h_r'] if max(cache[fname2][image_size]['h'], cache[fname2][image_size]['w']) != image_size: mkpts2_[:,0] *= cache[fname2][image_size]['w']/cache[fname2][image_size]['w_r'] mkpts2_[:,1] *= cache[fname2][image_size]['h']/cache[fname2][image_size]['h_r'] mkpts1, mkpts2 = np.vstack([mkpts1, mkpts1_]), np.vstack([mkpts2, mkpts2_]) if num_sg_matches < n_matches: # return early, no extra matches needed return mkpts1, mkpts2, num_sg_matches for idx, image_size in enumerate(extra_image_sizes): if extra_matcher == 'GS': mkpts1_, mkpts2_ = run_gs(fname1, fname2, image_size) mkpts1, mkpts2 = np.vstack([mkpts1, mkpts1_]), np.vstack([mkpts2, mkpts2_]) if USE_ROI: cropped_img1, cropped_img2, shift_xy1, shift_xy2 = \ extract_crops_via_cluster(fname1, fname2, mkpts1, mkpts2) mkpts_crop1, mkpts_crop2 = superglue_inference(model, cache, fname1, fname2, image_size) x1_min, y1_min = shift_xy1 x2_min, y2_min = shift_xy2 mkpts_crop1[:,0] += x1_min mkpts_crop1[:,1] += y1_min mkpts_crop2[:,0] += x2_min mkpts_crop2[:,1] += y2_min mkpts1, mkpts2 = np.vstack([mkpts1, mkpts_crop1]), np.vstack([mkpts2, mkpts_crop2]) return mkpts1, mkpts2, num_sg_matches

2023-06-09 上传