{"version":2,"relationshipURLBase":"https://codingai-lec03.pages.dev/course/notebook-blocks/4296199189944332aa0e7d0ed0d6a2dc.html","relationshipResolution":"Resolve relative relationship URLs against relationshipURLBase; complete records and absolute URLs are in blocks.","title":"4. 对齐：把连续位置准确交给现有特征图 · 实现代码","url":"https://codingai-lec03.pages.dev/course/notebook-blocks/4296199189944332aa0e7d0ed0d6a2dc.html","markdown":"https://codingai-lec03.pages.dev/course/notebook-blocks/4296199189944332aa0e7d0ed0d6a2dc.md","pages":[{"id":"reading-opening","title":"4. 对齐：把连续位置准确交给现有特征图 · 实现代码","unit":"4. 对齐：把连续位置准确交给现有特征图 · 实现代码","unitId":"notebook-blocks/4296199189944332aa0e7d0ed0d6a2dc","chapter":"course","number":1}],"aliases":[{"oldId":"b-e80e841a5314dddea5428c63","targetId":"b-e80e841a5314dddea5428c63","page":"reading-opening","operation":"move","beforeSHA256":"923e066494e483e0d0fdd514ec12b59fe7659670980fdf4639d15a488eccad0e","afterSHA256":"923e066494e483e0d0fdd514ec12b59fe7659670980fdf4639d15a488eccad0e","reason":"Same source body in authored semantic page"},{"oldId":"b-a8c314fa969dbf57f3345c1b","targetId":"b-a8c314fa969dbf57f3345c1b","page":"reading-opening","operation":"move","beforeSHA256":"353ca18e1e98b3a86a2e198f8a03dcfb30931ad36ea37acb8eb8e60f61390b8e","afterSHA256":"353ca18e1e98b3a86a2e198f8a03dcfb30931ad36ea37acb8eb8e60f61390b8e","reason":"Same source body in authored semantic page"},{"oldId":"b-f3d337338a90cc91f468cac6","targetId":"b-f3d337338a90cc91f468cac6","page":"reading-opening","operation":"move","beforeSHA256":"42cba31deccba2a350b9b23bd0ca1dcaa4c4c5cb9d35c773e1fcb89124788ccd","afterSHA256":"42cba31deccba2a350b9b23bd0ca1dcaa4c4c5cb9d35c773e1fcb89124788ccd","reason":"Same source body in authored semantic page"},{"oldId":"b-bf309e3a908c31c98540ca9a","targetId":"b-bf309e3a908c31c98540ca9a","page":"reading-opening","operation":"move","beforeSHA256":"e0584a8ed4ddfb5b9c9abb132012919eb506480c39698c3ddd67fccd73d0a12e","afterSHA256":"e0584a8ed4ddfb5b9c9abb132012919eb506480c39698c3ddd67fccd73d0a12e","reason":"Same source body in authored semantic page"},{"oldId":"b-534306b6479b00e5590738a5","targetId":"b-534306b6479b00e5590738a5","page":"reading-opening","operation":"move","beforeSHA256":"74f6c801871ab4f57344e84fd4bf08f6a85b501135e90d633f7a5247d66f09f0","afterSHA256":"74f6c801871ab4f57344e84fd4bf08f6a85b501135e90d633f7a5247d66f09f0","reason":"Same source body in authored semantic page"}],"blocks":[{"id":"b-e80e841a5314dddea5428c63","type":"p","scope":"document","url":"https://codingai-lec03.pages.dev/course/notebook-blocks/4296199189944332aa0e7d0ed0d6a2dc.html#b-e80e841a5314dddea5428c63","content":"[CLS 02 · 从类别到区域与掩码](/course/notebooks/f9ab632ba16b4f2084669791cba6ba85.html)","sha256":"923e066494e483e0d0fdd514ec12b59fe7659670980fdf4639d15a488eccad0e","chapter":{"id":"course","title":"4. 对齐：把连续位置准确交给现有特征图 · 实现代码"},"unit":{"id":"notebook-blocks/4296199189944332aa0e7d0ed0d6a2dc","title":"4. 对齐：把连续位置准确交给现有特征图 · 实现代码"},"page":{"id":"reading-opening","title":"4. 对齐：把连续位置准确交给现有特征图 · 实现代码","number":1},"sectionTitle":"4. 对齐：把连续位置准确交给现有特征图 · 实现代码","currentQuestion":"4. 对齐：把连续位置准确交给现有特征图 · 实现代码","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":null,"nextBlock":"b-a8c314fa969dbf57f3345c1b","prerequisites":[],"relatedBlocks":[]},{"id":"b-a8c314fa969dbf57f3345c1b","type":"h1","scope":"document","url":"https://codingai-lec03.pages.dev/course/notebook-blocks/4296199189944332aa0e7d0ed0d6a2dc.html#b-a8c314fa969dbf57f3345c1b","content":"# 4. 对齐：把连续位置准确交给现有特征图 · 实现代码","sha256":"353ca18e1e98b3a86a2e198f8a03dcfb30931ad36ea37acb8eb8e60f61390b8e","chapter":{"id":"course","title":"4. 对齐：把连续位置准确交给现有特征图 · 实现代码"},"unit":{"id":"notebook-blocks/4296199189944332aa0e7d0ed0d6a2dc","title":"4. 对齐：把连续位置准确交给现有特征图 · 实现代码"},"page":{"id":"reading-opening","title":"4. 对齐：把连续位置准确交给现有特征图 · 实现代码","number":1},"sectionTitle":"4. 对齐：把连续位置准确交给现有特征图 · 实现代码","currentQuestion":"4. 对齐：把连续位置准确交给现有特征图 · 实现代码","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-e80e841a5314dddea5428c63","nextBlock":"b-f3d337338a90cc91f468cac6","prerequisites":[{"id":"b-e80e841a5314dddea5428c63","url":"#b-e80e841a5314dddea5428c63","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-f3d337338a90cc91f468cac6","type":"p","scope":"document","url":"https://codingai-lec03.pages.dev/course/notebook-blocks/4296199189944332aa0e7d0ed0d6a2dc.html#b-f3d337338a90cc91f468cac6","content":"主线阅读与优先实验","sha256":"42cba31deccba2a350b9b23bd0ca1dcaa4c4c5cb9d35c773e1fcb89124788ccd","chapter":{"id":"course","title":"4. 对齐：把连续位置准确交给现有特征图 · 实现代码"},"unit":{"id":"notebook-blocks/4296199189944332aa0e7d0ed0d6a2dc","title":"4. 对齐：把连续位置准确交给现有特征图 · 实现代码"},"page":{"id":"reading-opening","title":"4. 对齐：把连续位置准确交给现有特征图 · 实现代码","number":1},"sectionTitle":"4. 对齐：把连续位置准确交给现有特征图 · 实现代码","currentQuestion":"4. 对齐：把连续位置准确交给现有特征图 · 实现代码","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-a8c314fa969dbf57f3345c1b","nextBlock":"b-bf309e3a908c31c98540ca9a","prerequisites":[{"id":"b-a8c314fa969dbf57f3345c1b","url":"#b-a8c314fa969dbf57f3345c1b","role":"section-title"},{"id":"b-e80e841a5314dddea5428c63","url":"#b-e80e841a5314dddea5428c63","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-bf309e3a908c31c98540ca9a","type":"p","scope":"document","url":"https://codingai-lec03.pages.dev/course/notebook-blocks/4296199189944332aa0e7d0ed0d6a2dc.html#b-bf309e3a908c31c98540ca9a","content":"同图四输出、共享计算、FCN、RoIAlign、信息碰撞与SAM接口","sha256":"e0584a8ed4ddfb5b9c9abb132012919eb506480c39698c3ddd67fccd73d0a12e","chapter":{"id":"course","title":"4. 对齐：把连续位置准确交给现有特征图 · 实现代码"},"unit":{"id":"notebook-blocks/4296199189944332aa0e7d0ed0d6a2dc","title":"4. 对齐：把连续位置准确交给现有特征图 · 实现代码"},"page":{"id":"reading-opening","title":"4. 对齐：把连续位置准确交给现有特征图 · 实现代码","number":1},"sectionTitle":"4. 对齐：把连续位置准确交给现有特征图 · 实现代码","currentQuestion":"4. 对齐：把连续位置准确交给现有特征图 · 实现代码","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-f3d337338a90cc91f468cac6","nextBlock":"b-534306b6479b00e5590738a5","prerequisites":[{"id":"b-a8c314fa969dbf57f3345c1b","url":"#b-a8c314fa969dbf57f3345c1b","role":"section-title"},{"id":"b-e80e841a5314dddea5428c63","url":"#b-e80e841a5314dddea5428c63","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-534306b6479b00e5590738a5","type":"pre","scope":"document","url":"https://codingai-lec03.pages.dev/course/notebook-blocks/4296199189944332aa0e7d0ed0d6a2dc.html#b-534306b6479b00e5590738a5","content":"```\n# 独立一维采样练习；不等同于完整二维 RoIAlign。\nimport math\nfeature = [0.0,1.0,2.0,6.0,7.0]\nstride = 16.0\nfor x in [32.0,35.0,36.0,40.0,48.0]:\n    u = x/stride\n    lo = math.floor(u); hi = min(lo+1,len(feature)-1)\n    alpha = u-lo\n    v = (1-alpha)*feature[lo]+alpha*feature[hi]\n    print(f'原图x={x:g}, 特征u={u:g}, 左邻={lo}, 插值={v:g}')\nassert math.isclose((1-0.1875)*2+0.1875*6,2.75)\n```","sha256":"74f6c801871ab4f57344e84fd4bf08f6a85b501135e90d633f7a5247d66f09f0","chapter":{"id":"course","title":"4. 对齐：把连续位置准确交给现有特征图 · 实现代码"},"unit":{"id":"notebook-blocks/4296199189944332aa0e7d0ed0d6a2dc","title":"4. 对齐：把连续位置准确交给现有特征图 · 实现代码"},"page":{"id":"reading-opening","title":"4. 对齐：把连续位置准确交给现有特征图 · 实现代码","number":1},"sectionTitle":"4. 对齐：把连续位置准确交给现有特征图 · 实现代码","currentQuestion":"4. 对齐：把连续位置准确交给现有特征图 · 实现代码","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-bf309e3a908c31c98540ca9a","nextBlock":null,"prerequisites":[{"id":"b-a8c314fa969dbf57f3345c1b","url":"#b-a8c314fa969dbf57f3345c1b","role":"section-title"},{"id":"b-e80e841a5314dddea5428c63","url":"#b-e80e841a5314dddea5428c63","role":"problem-context"}],"relatedBlocks":[]}]}
