免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營的一線實(shí)戰(zhàn)洞察。

C++實(shí)現(xiàn)3D高斯?jié)姙R:從原理到工程實(shí)踐

C++實(shí)現(xiàn)3D高斯?jié)姙R:從原理到工程實(shí)踐 1. 項(xiàng)目概述當(dāng)C遇上3D高斯?jié)姙R最近在計(jì)算機(jī)視覺和圖形學(xué)的圈子里一個(gè)名為“3D Gaussian Splatting”的技術(shù)火得不行。簡單來說它提供了一種全新的、極其高效的方法從一組稀疏的圖片或視頻中重建出逼真的、可實(shí)時(shí)渲染的3D場景。傳統(tǒng)的NeRF神經(jīng)輻射場雖然效果驚艷但訓(xùn)練和渲染速度一直是痛點(diǎn)。而3DGS3D Gaussian Splatting的簡稱的出現(xiàn)就像給這個(gè)領(lǐng)域注入了一針強(qiáng)心劑它用一堆可學(xué)習(xí)的3D高斯橢球體來表示場景渲染時(shí)通過一種叫“潑濺”Splatting的屏幕空間光柵化技術(shù)速度快到飛起效果還絲毫不遜色。但今天我們要聊的重點(diǎn)不是3DGS的原理本身雖然后面會(huì)深入拆解而是一個(gè)更讓開發(fā)者興奮的消息一個(gè)用純C從頭編寫的3DGS開源實(shí)現(xiàn)出現(xiàn)了。這意味著什么意味著我們終于可以擺脫對(duì)龐大Python/PyTorch生態(tài)的重度依賴獲得一個(gè)更輕量、更可控、性能潛力可能更高的底層工具。對(duì)于追求極致性能、需要集成到C原生應(yīng)用比如游戲引擎、工業(yè)仿真軟件或者單純想深入理解3DGS每一個(gè)計(jì)算細(xì)節(jié)的開發(fā)者來說這無疑是一個(gè)寶藏。這個(gè)C實(shí)現(xiàn)直接對(duì)標(biāo)了原始論文的官方Python實(shí)現(xiàn)。它不僅僅是一個(gè)“翻譯”更是在工程化、模塊化和跨平臺(tái)兼容性上做了大量思考。接下來我們就一起拆開這個(gè)“黑盒”看看它如何用C的利刃優(yōu)雅地實(shí)現(xiàn)3D高斯?jié)姙R這一前沿技術(shù)。2. 核心架構(gòu)與設(shè)計(jì)哲學(xué)2.1 為什么選擇C重寫在AI研究領(lǐng)域Python因其靈活的語法和豐富的庫如PyTorch, NumPy成為絕對(duì)主流。原始的3DGS實(shí)現(xiàn)也是基于PyTorch的。那么為何要大費(fèi)周章地用C重寫呢這背后有幾個(gè)核心考量性能與可控性Python的解釋器開銷和動(dòng)態(tài)類型在追求毫秒級(jí)渲染延遲的實(shí)時(shí)應(yīng)用中會(huì)成為瓶頸。C允許開發(fā)者進(jìn)行精細(xì)的內(nèi)存管理、SIMD指令集優(yōu)化如AVX2, AVX-512以及多線程并行將硬件性能壓榨到極致。對(duì)于3DGS中大量的線性代數(shù)運(yùn)算高斯協(xié)方差矩陣的變換、顏色球諧系數(shù)的計(jì)算和排序操作基于深度的高斯橢球體排序C能提供更底層的優(yōu)化空間。部署與集成許多生產(chǎn)環(huán)境如游戲Unity/Unreal的插件、桌面應(yīng)用Qt框架、移動(dòng)端或邊緣設(shè)備其核心都是C/C生態(tài)。一個(gè)純C的3DGS庫可以輕松編譯成動(dòng)態(tài)鏈接庫DLL/.so無需引入龐大的Python運(yùn)行時(shí)極大地簡化了集成流程減少了依賴沖突。理解與教學(xué)用C實(shí)現(xiàn)迫使開發(fā)者必須親手實(shí)現(xiàn)每一個(gè)矩陣運(yùn)算、反向傳播的梯度計(jì)算而不是調(diào)用torch.autograd。這對(duì)于深刻理解3DGS的數(shù)學(xué)原理和訓(xùn)練動(dòng)態(tài)是無價(jià)的。代碼結(jié)構(gòu)也會(huì)因此更加清晰剝離了深度學(xué)習(xí)框架的抽象層直指算法核心??缙脚_(tái)一致性C配合CMake等構(gòu)建工具可以相對(duì)輕松地在Windows、Linux、macOS甚至嵌入式平臺(tái)上實(shí)現(xiàn)一致的編譯和運(yùn)行行為避免了Python環(huán)境中各種包版本和CUDA驅(qū)動(dòng)兼容性的“玄學(xué)”問題。這個(gè)開源項(xiàng)目的設(shè)計(jì)哲學(xué)很明確在保持與原始論文算法一致性的前提下構(gòu)建一個(gè)高性能、零外部深度學(xué)習(xí)框架依賴、模塊清晰、便于學(xué)習(xí)和二次開發(fā)的C代碼庫。2.2 項(xiàng)目整體代碼結(jié)構(gòu)剖析一個(gè)優(yōu)秀的開源項(xiàng)目其代碼結(jié)構(gòu)一定是清晰易懂的。這個(gè)C 3DGS項(xiàng)目通常包含以下核心模塊include/ # 頭文件目錄 core/ # 核心數(shù)據(jù)結(jié)構(gòu) Gaussian.hpp # 高斯橢球體定義位置、縮放、旋轉(zhuǎn)、顏色、透明度 Camera.hpp # 相機(jī)模型針孔模型包含內(nèi)外參 SplattingRasterizer.hpp # 潑濺光柵化器 utils/ # 工具類 MathUtils.hpp # 數(shù)學(xué)工具矩陣運(yùn)算、球諧函數(shù)等 ImageIO.hpp # 圖像讀寫 Config.hpp # 配置文件解析 src/ # 源文件目錄 core/ # 核心實(shí)現(xiàn) Gaussian.cpp Camera.cpp SplattingRasterizer.cpp utils/ MathUtils.cpp ImageIO.cpp apps/ # 應(yīng)用示例 train.cpp # 訓(xùn)練程序 render.cpp # 渲染程序 convert.py # 可能包含將原始.ply模型轉(zhuǎn)換為內(nèi)部格式的腳本 CMakeLists.txt # 跨平臺(tái)構(gòu)建配置核心數(shù)據(jù)結(jié)構(gòu)Gaussian 這是整個(gè)系統(tǒng)的基石。在C中它不再是一個(gè)PyTorch Tensor而是一個(gè)結(jié)構(gòu)體或類包含Eigen::Vector3f position;// 中心位置 (x, y, z)Eigen::Vector3f scale;// 縮放對(duì)應(yīng)協(xié)方差矩陣的特征值Eigen::Quaternionf rotation;// 旋轉(zhuǎn)四元數(shù)對(duì)應(yīng)協(xié)方差矩陣的特征向量方向Eigen::Vector3f color;// 基礎(chǔ)顏色RGBfloat alpha;// 透明度不透明度std::vectorfloat sh_coeffs;// 球諧函數(shù)系數(shù)用于視角相關(guān)顏色。通常存儲(chǔ)到3階16個(gè)系數(shù)。使用Eigen庫進(jìn)行線性代數(shù)運(yùn)算幾乎是C科學(xué)計(jì)算的不二之選它提供類Matlab的API并且支持編譯時(shí)優(yōu)化。潑濺光柵化器SplattingRasterizer 這是渲染的核心。它的工作流程可以概括為視錐體剔除將不在當(dāng)前相機(jī)視錐體內(nèi)的3D高斯剔除減少計(jì)算量。投影與排序?qū)?D高斯橢球體投影到2D屏幕空間計(jì)算其影響的像素范圍bounding box。然后按照深度值從遠(yuǎn)到近排序。這是正確混合透明度的關(guān)鍵也是與NeRF體渲染截然不同的地方——NeRF是沿著射線積分而3DGS是像粒子系統(tǒng)一樣從后往前畫。并行光柵化對(duì)每個(gè)像素遍歷可能影響它的高斯橢球體列表。對(duì)于每個(gè)高斯計(jì)算其在當(dāng)前像素的2D投影權(quán)重與協(xié)方差矩陣相關(guān)然后結(jié)合其顏色通過球諧函數(shù)和視角計(jì)算和透明度進(jìn)行Alpha混合。梯度計(jì)算訓(xùn)練時(shí)在訓(xùn)練模式下光柵化器還需要計(jì)算渲染圖像與真實(shí)圖像之間的損失并反向傳播梯度到每個(gè)高斯的參數(shù)位置、縮放、旋轉(zhuǎn)、顏色、透明度、球諧系數(shù)。這需要手動(dòng)推導(dǎo)并實(shí)現(xiàn)d(Loss)/d(Gaussian)。3. 關(guān)鍵技術(shù)實(shí)現(xiàn)細(xì)節(jié)拆解3.1 3D高斯的表示與協(xié)方差矩陣3DGS的核心創(chuàng)新在于用3D高斯分布來表示場景中的一個(gè)“小色塊”。一個(gè)3D高斯由均值中心位置和協(xié)方差矩陣Σ定義。但在存儲(chǔ)和優(yōu)化時(shí)我們并不直接存儲(chǔ)Σ因?yàn)樗枰前胝ň仃嚒U撐牟捎昧烁鼉?yōu)雅的分解Σ R S S^T R^T其中S是一個(gè)對(duì)角縮放矩陣由scale向量的三個(gè)分量構(gòu)成。這決定了高斯橢球體在三個(gè)主軸上的“胖瘦”。R是一個(gè)旋轉(zhuǎn)矩陣由rotation四元數(shù)轉(zhuǎn)換而來。這決定了橢球體的朝向。在C中計(jì)算一個(gè)高斯在世界坐標(biāo)系下的協(xié)方差矩陣代碼如下Eigen::Matrix3f Gaussian::covariance() const { // 1. 從四元數(shù)構(gòu)建旋轉(zhuǎn)矩陣 Eigen::Matrix3f R rotation.toRotationMatrix(); // 2. 構(gòu)建縮放矩陣 Eigen::Matrix3f S scale.array().exp().matrix().asDiagonal(); // 通常對(duì)scale取exp保證為正 // 3. 計(jì)算協(xié)方差 Σ R S S^T R^T Eigen::Matrix3f cov R * S * S.transpose() * R.transpose(); // 4. 加上一個(gè)小的正則化項(xiàng)防止矩陣奇異 cov 1e-4 * Eigen::Matrix3f::Identity(); return cov; }注意這里對(duì)scale取了指數(shù)exp(scale)。這是因?yàn)樵趦?yōu)化過程中scale參數(shù)是自由變量可能為負(fù)。取指數(shù)能保證縮放因子始終為正符合物理意義。這也是原始論文的做法。3.2 基于Tile的并行光柵化實(shí)時(shí)渲染的關(guān)鍵是并行。3DGS的渲染非常適合GPU并行但在C CPU實(shí)現(xiàn)中我們也要充分利用多核。一個(gè)高效的策略是基于Tile的光柵化。屏幕被劃分成多個(gè)小Tile例如16x16像素。每個(gè)Tile由一個(gè)獨(dú)立的線程處理。每個(gè)高斯橢球體根據(jù)其投影的2D包圍盒被分配到與其相交的Tile的任務(wù)隊(duì)列中。void SplattingRasterizer::renderTile(int tile_x, int tile_y, std::vectorGaussian sorted_gaussians) { int start_x tile_x * TILE_SIZE; int start_y tile_y * TILE_SIZE; int end_x std::min(start_x TILE_SIZE, screen_width); int end_y std::min(start_y TILE_SIZE, screen_height); // 預(yù)分配該Tile的深度緩沖區(qū)、顏色緩沖區(qū) std::vectorfloat depth_buffer(TILE_SIZE * TILE_SIZE, INFINITY); std::vectorEigen::Vector3f color_buffer(TILE_SIZE * TILE_SIZE, Eigen::Vector3f::Zero()); std::vectorfloat alpha_buffer(TILE_SIZE * TILE_SIZE, 0.0f); // 處理被分配到這個(gè)Tile的所有高斯 for (auto gaussian : sorted_gaussians) { // 計(jì)算該高斯影響的像素范圍與當(dāng)前Tile的交集 BBox2D bbox projectGaussianToScreen(gaussian); BBox2D tile_bbox(start_x, start_y, end_x, end_y); BBox2D intersect bbox.intersect(tile_bbox); if (intersect.isValid()) { // 遍歷交集內(nèi)的每一個(gè)像素 for (int py intersect.y_min; py intersect.y_max; py) { for (int px intersect.x_min; px intersect.x_max; px) { // 計(jì)算該像素在高斯局部2D坐標(biāo)系下的坐標(biāo) Eigen::Vector2f pixel_pos(px 0.5f, py 0.5f); float weight computeGaussianWeight2D(gaussian, pixel_pos); if (weight 1e-3f) { // 忽略貢獻(xiàn)過小的像素 // Alpha混合 int idx (py - start_y) * TILE_SIZE (px - start_x); float new_alpha 1.0f - std::pow(1.0f - gaussian.alpha, weight); float t new_alpha * (1.0f - alpha_buffer[idx]); color_buffer[idx] t * computeSHColor(gaussian, view_dir); alpha_buffer[idx] t; } } } } } // 將Tile緩沖區(qū)合并到全局幀緩沖區(qū) mergeTileToFramebuffer(start_x, start_y, color_buffer, alpha_buffer); }這種Tile-based的方法極大地減少了線程間的競爭提高了緩存命中率是CPU端實(shí)現(xiàn)高效并行的關(guān)鍵。3.3 球諧函數(shù)Spherical Harmonics的顏色建模為了捕捉視角相關(guān)的顏色變化如高光3DGS使用了球諧函數(shù)。球諧函數(shù)是一組定義在球面上的正交基函數(shù)類似于傅里葉變換任何球面上的函數(shù)都可以用它們的加權(quán)和來近似。在代碼中我們通常存儲(chǔ)到3階共16個(gè)系數(shù)包含RGB三個(gè)通道所以總共是48個(gè)系數(shù)。給定一個(gè)視角方向單位向量計(jì)算顏色的函數(shù)如下Eigen::Vector3f Gaussian::evalSH(const Eigen::Vector3f view_dir) const { // 將視角方向轉(zhuǎn)換到高斯的局部坐標(biāo)系由旋轉(zhuǎn)矩陣定義 Eigen::Vector3f local_dir rotation.inverse() * view_dir; // 計(jì)算球諧基函數(shù)在local_dir方向上的值 (Y_l^m) std::arrayfloat, 16 sh_basis computeSHBasis(local_dir); Eigen::Vector3f color base_color; // 0階項(xiàng)即基礎(chǔ)顏色 for (int i 1; i 16; i) { // 從1階開始累加 color sh_coeffs_r[i] * sh_basis[i] * Eigen::Vector3f::UnitX() sh_coeffs_g[i] * sh_basis[i] * Eigen::Vector3f::UnitY() sh_coeffs_b[i] * sh_basis[i] * Eigen::Vector3f::UnitZ(); } // 應(yīng)用Sigmoid激活函數(shù)將輸出限制在[0,1]范圍內(nèi) color 1.0f / (1.0f (-color).array().exp()); return color; }實(shí)操心得球諧系數(shù)的初始化很重要。通常將0階以上的系數(shù)初始化為接近0的小隨機(jī)數(shù)這樣初始渲染結(jié)果接近基礎(chǔ)顏色訓(xùn)練更穩(wěn)定。高階SH如4階能表達(dá)更復(fù)雜的光照但也更容易過擬合需要更多的數(shù)據(jù)和平滑正則化。4. 從零開始的訓(xùn)練流程實(shí)現(xiàn)4.1 數(shù)據(jù)準(zhǔn)備與初始化訓(xùn)練一個(gè)3DGS模型首先需要數(shù)據(jù)。通常是圍繞物體或場景拍攝的一組標(biāo)定好的圖片已知相機(jī)位姿。項(xiàng)目通常會(huì)提供一個(gè)工具將COLMAP一個(gè)經(jīng)典的運(yùn)動(dòng)恢復(fù)結(jié)構(gòu)工具輸出的結(jié)果cameras.bin,images.bin,points3D.bin轉(zhuǎn)換為自己的數(shù)據(jù)格式。初始化的第一步是從稀疏點(diǎn)云創(chuàng)建初始高斯集合。COLMAP生成的點(diǎn)云提供了初始的position。其他參數(shù)初始化如下scale: 初始化為一個(gè)與點(diǎn)云平均相鄰距離相關(guān)的對(duì)數(shù)尺度值例如log(0.1)。rotation: 初始化為單位四元數(shù)無旋轉(zhuǎn)。color: 從點(diǎn)云對(duì)應(yīng)的圖像像素顏色中獲取或初始化為中性灰色。alpha: 初始化為一個(gè)較小的值如0.1。sh_coeffs: 0階以上初始化為零。std::vectorGaussian initializeGaussiansFromPointCloud(const PointCloud pc) { std::vectorGaussian gaussians; gaussians.reserve(pc.points.size()); float mean_dist computeMeanNeighborDistance(pc); // 計(jì)算點(diǎn)云平均鄰近距離 float init_scale std::log(0.1f * mean_dist); // 經(jīng)驗(yàn)公式 for (const auto point : pc.points) { Gaussian g; g.position point.position; g.scale Eigen::Vector3f::Constant(init_scale); g.rotation Eigen::Quaternionf::Identity(); g.color point.color; // 從點(diǎn)云獲取的顏色 g.alpha 0.1f; // 初始化球諧系數(shù)0階為顏色1階以上為0 g.sh_coeffs.resize(48, 0.0f); // 3通道 * 16階 g.sh_coeffs[0] point.color.x(); g.sh_coeffs[1] point.color.y(); g.sh_coeffs[2] point.color.z(); gaussians.push_back(g); } return gaussians; }4.2 自適應(yīng)密度控制克隆與剔除這是3DGS訓(xùn)練中最精妙的部分之一它讓高斯橢球體能夠自適應(yīng)地生長到空白區(qū)域或細(xì)節(jié)豐富的區(qū)域。算法在每N次迭代后執(zhí)行克隆Clone對(duì)于位置梯度dL/dposition幅度大的高斯說明它覆蓋的區(qū)域“解釋力”不足需要更多高斯來建模。我們就在其位置附近復(fù)制一個(gè)新的高斯并將其尺度縮小一半。剔除Prune對(duì)于透明度alpha值持續(xù)很低例如 0.01的高斯它對(duì)最終渲染貢獻(xiàn)極小可以安全移除。此外對(duì)于尺度變得異常大的高斯可能覆蓋了空白區(qū)域也需要剔除。void adaptiveDensityControl(std::vectorGaussian gaussians, const std::vectorEigen::Vector3f position_grads, int iteration) { if (iteration % 100 0) { // 每100次迭代執(zhí)行一次 std::vectorGaussian new_gaussians; float clone_threshold 0.0002f; // 梯度閾值 float prune_alpha_threshold 0.01f; float max_scale std::log(1.5f); // 最大尺度閾值 for (size_t i 0; i gaussians.size(); i) { // 1. 剔除判斷 if (gaussians[i].alpha prune_alpha_threshold || gaussians[i].scale.maxCoeff() max_scale) { continue; // 跳過不加入新列表 } // 2. 克隆判斷 if (position_grads[i].norm() clone_threshold) { Gaussian cloned gaussians[i]; cloned.scale.array() - std::log(2.0f); // 尺度減半 new_gaussians.push_back(cloned); } new_gaussians.push_back(gaussians[i]); // 保留原高斯 } // 可選限制高斯總數(shù)防止爆炸式增長 if (new_gaussians.size() MAX_GAUSSIANS) { std::sort(new_gaussians.begin(), new_gaussians.end(), [](const Gaussian a, const Gaussian b) { return a.alpha b.alpha; }); new_gaussians.resize(MAX_GAUSSIANS); } gaussians.swap(new_gaussians); // 更新高斯列表 } }這個(gè)機(jī)制使得3DGS能夠從稀疏的初始點(diǎn)云開始自動(dòng)“生長”出密集且高質(zhì)量的場景表示無需任何手動(dòng)干預(yù)。4.3 損失函數(shù)與優(yōu)化器配置訓(xùn)練的目標(biāo)是讓渲染出來的圖片和真實(shí)圖片盡可能一致。損失函數(shù)通常結(jié)合了L1損失和結(jié)構(gòu)相似性SSIM損失即論文中提到的“D-SSIM”損失組合。float computeLoss(const Image rendered, const Image target) { float l1_loss 0.0f; float ssim_loss 0.0f; int pixel_count rendered.width * rendered.height; for (int i 0; i pixel_count; i) { // L1 Loss Eigen::Vector3f diff rendered.pixels[i] - target.pixels[i]; l1_loss diff.cwiseAbs().sum(); } l1_loss / (pixel_count * 3); // 平均每個(gè)通道的L1損失 // SSIM Loss (簡化版實(shí)際需要計(jì)算局部窗口的均值、方差、協(xié)方差) // 這里示意性寫出實(shí)際實(shí)現(xiàn)需要一個(gè)完整的SSIM計(jì)算函數(shù) ssim_loss 1.0f - computeSSIM(rendered, target); // 組合損失 float lambda_ssim 0.2f; // 論文推薦的權(quán)重 float total_loss (1.0f - lambda_ssim) * l1_loss lambda_ssim * ssim_loss; return total_loss; }優(yōu)化器方面原始論文使用了類似Adam的優(yōu)化器但對(duì)不同參數(shù)設(shè)置了不同的學(xué)習(xí)率LR和調(diào)度策略LR Scheduling。在C實(shí)現(xiàn)中我們可以手動(dòng)實(shí)現(xiàn)一個(gè)簡化的Adam或者集成一個(gè)小型優(yōu)化庫如ceres的優(yōu)化模塊但會(huì)增加依賴。更常見的做法是自己實(shí)現(xiàn)一個(gè)輕量版位置position高學(xué)習(xí)率開始指數(shù)衰減。因?yàn)槲恢米兓顒×?。透明度alpha單獨(dú)使用一個(gè)較高的Sigmoid函數(shù)輸入的學(xué)習(xí)率并很快衰減。旋轉(zhuǎn)rotation和縮放scale中等學(xué)習(xí)率。顏色color和球諧系數(shù)SH較低的學(xué)習(xí)率因?yàn)轭伾兓鄬?duì)平緩。5. 工程實(shí)踐編譯、運(yùn)行與性能調(diào)優(yōu)5.1 環(huán)境配置與項(xiàng)目編譯假設(shè)項(xiàng)目使用CMake構(gòu)建一個(gè)典型的編譯流程如下# 1. 克隆項(xiàng)目 git clone https://github.com/awesome-author/cpp-3d-gaussian-splatting.git cd cpp-3d-gaussian-splatting # 2. 創(chuàng)建構(gòu)建目錄并配置 mkdir build cd build cmake .. -DCMAKE_BUILD_TYPERelease -DENABLE_AVX2ON # 3. 編譯 make -j$(nproc) # 使用所有CPU核心并行編譯關(guān)鍵CMake選項(xiàng)解析-DCMAKE_BUILD_TYPERelease啟用編譯器最高級(jí)別優(yōu)化-O3。-DENABLE_AVX2ON啟用AVX2指令集對(duì)矩陣運(yùn)算有巨大加速。確保你的CPU支持大多數(shù)現(xiàn)代CPU都支持。-DENABLE_OPENMPON啟用OpenMP用于Tile光柵化等環(huán)節(jié)的CPU多線程并行。-DUSE_EIGENON通常默認(rèn)開啟使用Eigen庫。踩坑記錄在Windows上使用Visual Studio編譯時(shí)可能會(huì)遇到Eigen庫與MSVC編譯器兼容性的小問題比如對(duì)齊警告??梢栽诎珽igen頭文件前定義#define EIGEN_DONT_VECTORIZE或#define EIGEN_DISABLE_UNALIGNED_ARRAY_ASSERT來暫時(shí)解決但會(huì)犧牲性能。更好的方法是確保動(dòng)態(tài)分配的內(nèi)存如std::vectorEigen::Vector3f是16字節(jié)對(duì)齊的可以使用Eigen::aligned_allocator。5.2 運(yùn)行訓(xùn)練與渲染項(xiàng)目通常會(huì)提供兩個(gè)可執(zhí)行文件train和render。訓(xùn)練./apps/train \ --data_path /path/to/your/dataset \ # 數(shù)據(jù)路徑包含images/, sparse/等 --output_path /path/to/output \ # 輸出模型和日志的路徑 --iterations 30000 \ # 總迭代次數(shù) --resolution 4 \ # 訓(xùn)練開始時(shí)的圖像下采樣因子 --lambda_ssim 0.2 # SSIM損失權(quán)重訓(xùn)練過程會(huì)輸出損失曲線并定期保存中間模型.ply格式的點(diǎn)云包含了所有高斯參數(shù)。你可以用Meshlab或CloudCompare等軟件查看這個(gè).ply文件它已經(jīng)是一堆帶有顏色和朝向的橢球體了。渲染./apps/render \ --model /path/to/output/point_cloud.ply \ # 訓(xùn)練好的模型 --camera_trajectory trajectory.json \ # 相機(jī)軌跡文件定義渲染路徑 --output_video output.mp4 # 輸出視頻渲染器會(huì)加載模型按照給定的相機(jī)軌跡逐幀渲染并合成視頻。5.3 CPU端性能優(yōu)化技巧在純CPU環(huán)境下要讓3DGS渲染達(dá)到交互速率30 FPS需要一些優(yōu)化技巧空間數(shù)據(jù)結(jié)構(gòu)加速剔除在視錐體剔除前使用BVH包圍盒層次結(jié)構(gòu)或KD-Tree來組織所有高斯橢球體。這樣可以將剔除的復(fù)雜度從O(N)降低到O(log N)。SIMD指令集優(yōu)化這是CPU性能提升的關(guān)鍵。對(duì)于計(jì)算高斯權(quán)重、顏色混合等密集型循環(huán)使用AVX2/AVX-512 intrinsic進(jìn)行手動(dòng)向量化。例如同時(shí)計(jì)算8個(gè)像素的權(quán)重。#include immintrin.h __m256 weight_vec _mm256_set1_ps(weight); __m256 alpha_vec _mm256_loadu_ps(alpha_buffer[idx]); __m256 new_alpha_vec _mm256_set1_ps(1.0f) - _mm256_pow_ps(_mm256_set1_ps(1.0f) - _mm256_set1_ps(gaussian.alpha), weight_vec); __m256 t_vec new_alpha_vec * (_mm256_set1_ps(1.0f) - alpha_vec); // ... 后續(xù)向量化顏色計(jì)算和累加內(nèi)存布局優(yōu)化AoS vs SoA默認(rèn)情況下std::vectorGaussian是數(shù)組結(jié)構(gòu)AoS。在并行處理時(shí)連續(xù)訪問某個(gè)特定字段如所有高斯的alpha會(huì)導(dǎo)致緩存不友好。可以考慮改為結(jié)構(gòu)數(shù)組SoA即用多個(gè)std::vector分別存儲(chǔ)所有高斯的position_x,position_y,position_z,scale_x... 這樣在批量操作單一屬性時(shí)內(nèi)存訪問是連續(xù)的能極大提升緩存效率。異步I/O與流水線在渲染視頻時(shí)下一幀的加載相機(jī)參數(shù)、當(dāng)前幀的計(jì)算、上一幀的編碼保存可以流水線化充分利用CPU多核與IO等待時(shí)間。6. 常見問題與調(diào)試心得6.1 訓(xùn)練不收斂或結(jié)果一團(tuán)模糊這是新手最常見的問題??赡艿脑蚝团挪椴襟E學(xué)習(xí)率設(shè)置不當(dāng)這是首要懷疑對(duì)象。嘗試大幅降低所有學(xué)習(xí)率比如除以10。3DGS對(duì)學(xué)習(xí)率非常敏感尤其是初始階段。數(shù)據(jù)問題相機(jī)標(biāo)定不準(zhǔn)檢查COLMAP重建的相機(jī)參數(shù)。重投影誤差是否過大可以用Meshlab加載稀疏點(diǎn)云和相機(jī)直觀查看相機(jī)位置是否合理。圖像曝光不一致確保輸入圖像序列的曝光、白平衡基本一致。差異過大會(huì)導(dǎo)致顏色學(xué)習(xí)混亂。初始化點(diǎn)云質(zhì)量差如果COLMAP重建的點(diǎn)云非常稀疏或噪聲大高斯初始化就失敗了。嘗試使用更高分辨率的圖像、增加特征匹配數(shù)量重新運(yùn)行COLMAP或者使用其他SFM工具。梯度爆炸/消失檢查梯度值是否出現(xiàn)NaN或Inf。在計(jì)算協(xié)方差矩陣、球諧函數(shù)時(shí)確保數(shù)值穩(wěn)定如添加微小正則化項(xiàng)防止矩陣求逆失敗。6.2 渲染出現(xiàn)“空洞”或“飛點(diǎn)”“空洞”通常是因?yàn)楦咚沟拿芏炔粔?。檢查自適應(yīng)密度控制中的克隆閾值是否設(shè)得太高或者最大高斯數(shù)量限制是否太小??梢試L試降低克隆梯度閾值讓更多高斯被創(chuàng)建。“飛點(diǎn)”屏幕上出現(xiàn)孤立的、顏色突兀的像素點(diǎn)。這通常是由于某些高斯的尺度變得極小但透明度較高在投影時(shí)覆蓋了不正確的像素。解決方法是加強(qiáng)尺度正則化或者在剔除時(shí)對(duì)尺度極小的高斯也進(jìn)行剔除即使它的alpha不低。6.3 性能瓶頸分析使用性能分析工具如Linux的perf macOS的Instruments Windows的VTune來定位熱點(diǎn)。如果時(shí)間主要花在排序上考慮使用更高效的排序算法如基數(shù)排序針對(duì)深度值或者嘗試不每幀嚴(yán)格排序而是使用近似的、分桶的排序方法。如果時(shí)間主要花在權(quán)重計(jì)算上檢查是否進(jìn)行了不必要的重復(fù)計(jì)算。例如每個(gè)高斯的2D協(xié)方差矩陣投影可以在Tile處理前預(yù)計(jì)算一次。確保循環(huán)最內(nèi)部的計(jì)算盡可能輕量。如果時(shí)間主要花在內(nèi)存訪問上這很可能是因?yàn)閮?nèi)存布局AoS導(dǎo)致的緩存抖動(dòng)。強(qiáng)烈建議嘗試改為SoA布局。6.4 與原始PyTorch實(shí)現(xiàn)的效果對(duì)比用C重寫后一個(gè)自然的疑問是效果和原版一致嗎你可以通過一個(gè)簡單的“對(duì)齊實(shí)驗(yàn)”來驗(yàn)證固定隨機(jī)種子在C和Python代碼中將隨機(jī)數(shù)生成器種子設(shè)為相同值。初始化一致性確保從同一個(gè)點(diǎn)云文件初始化且所有參數(shù)位置、顏色、縮放、旋轉(zhuǎn)的初始值完全一致。單步前向驗(yàn)證使用同一張圖片和相機(jī)參數(shù)運(yùn)行一次前向傳播渲染比較輸出的圖像像素值。由于浮點(diǎn)數(shù)計(jì)算順序和精度的細(xì)微差異絕對(duì)一致很難但相對(duì)誤差如平均像素差應(yīng)該非常小1e-5。單步反向驗(yàn)證計(jì)算損失后進(jìn)行一步梯度下降比較更新后的高斯參數(shù)。同樣檢查相對(duì)誤差。這個(gè)過程能幫你快速定位C實(shí)現(xiàn)中可能存在的公式錯(cuò)誤或?qū)崿F(xiàn)偏差。7. 擴(kuò)展與應(yīng)用前景這個(gè)C實(shí)現(xiàn)的真正威力在于其可擴(kuò)展性和可集成性。它不僅僅是一個(gè)研究復(fù)現(xiàn)更是一個(gè)強(qiáng)大的工程基礎(chǔ)。實(shí)時(shí)交互式查看器你可以基于OpenGL或Vulkan將光柵化器移植到GPU著色器中實(shí)現(xiàn)真正的實(shí)時(shí)100 FPS、高分辨率渲染。C層負(fù)責(zé)管理高斯數(shù)據(jù)結(jié)構(gòu)和自適應(yīng)控制GPU負(fù)責(zé)渲染二者通過CUDA或圖形API交互。動(dòng)態(tài)場景與變形當(dāng)前3DGS主要針對(duì)靜態(tài)場景??梢詳U(kuò)展高斯橢球體的屬性為其添加速度、加速度場或者綁定到骨骼動(dòng)畫上從而建模動(dòng)態(tài)物體。SLAM與在線重建將3DGS與單目或RGB-D相機(jī)結(jié)合實(shí)現(xiàn)增量式在線重建。新來的幀用于優(yōu)化和新增高斯同時(shí)實(shí)時(shí)渲染出當(dāng)前視角的融合畫面這比傳統(tǒng)的體素或點(diǎn)云SLAM有著更逼真的視覺效果。集成到游戲引擎將編譯好的庫作為插件導(dǎo)入U(xiǎn)nity或Unreal Engine。你可以錄制一段游戲內(nèi)的視頻用3DGS重建出游戲場景的逼真點(diǎn)云模型再導(dǎo)回引擎作為特殊的背景或特效使用。這個(gè)用C編寫的3D高斯?jié)姙R項(xiàng)目就像一把鋒利的手術(shù)刀讓我們得以拋開深度學(xué)習(xí)框架的“黑箱”直接審視和操控這個(gè)強(qiáng)大算法的每一個(gè)神經(jīng)元。它帶來的不僅是性能的提升更是理解的深入和創(chuàng)新的自由。無論是為了學(xué)習(xí)、研究還是產(chǎn)品集成深入探索這個(gè)代碼庫都將是一次收獲滿滿的旅程。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
伊人久久大香网| 殴美日比视频| 久操大| 91婷婷| 五月婷婷亚洲| 狠狠撸激情综合丁香五月天俺来啦| 5五月综合网亚洲| 99ri在线| 婷婷射图| EEUSS鲁片一区二区三区| 亚洲中文无码成人| 婷婷丁香视频在线观看免费 | 五月丁香婷婷爱激情综合网| 99色日本| 操操熟女| 无毒黄色网址| 色欲丁香| 色九九综合| 第四色婷婷最爱| 日本免费91| 色五月丁香com| 啪色综合| 99热成人| 99久久网站| 久久亚洲色导航| 久热伊人9| 亚洲网站观看视频| 色婷婷呢狠禁久禁| 色婷婷五月综合激情中文字幕| 九九黄色网| 五月综合色播播丁香婷婷| 91色噜噜狠狠狠狠色综合| 江苏少妇性BBB搡BBB爽爽爽| 性av| 五月天婷婷色播综合在线| 丁香五月婷婷基地| www.99热这里只有精品| 99热综合网| 91凹凸在线| 色色网站在线| 婷婷激情人妻| WWW久久久| 丁香五月天电影| 九九热99热| 手机免费福利视频| 欧美情月伍月天| 久久曰曰| 99在线精品免费视频| 丁香激情久久| 亚洲色另类| 91 九色 熟女| 俺去也五月天婷婷| 五月丁香综合网| 久久久久亚洲AV无码网影音先锋| 思思热视频在线观看| 婷婷人人操| 婷婷五月天社区| 丁香久久| AV在线资源| 第四色大香蕉| 五月激情小说网| 色五月综合网| 麻豆AV一区二区三区| 97天堂| 9+1视频网址| 热久久91| 国产毛片精品一区二区色欲黄A片| 婷婷五月天成人网| 五月婷婷丁香大香蕉| 狼人伊人干| 婷婷五月在线| 99久久99视频只有精品| 久久思思热视频| 五月丁香色婷婷熟女| 激情婷婷五月天在线观看| 高清无码中文字幕aVDV| 99在线热视频| 噼里啪啦完整版中文在线观看| 国产69精品久久久久999小说| 日本不卡高字幕在线2019| 九九操屄| 中文字幕婷婷| 狠狠色噜噜| 婷婷性爱五月天| 9久久婷婷国产综合精品性色| 91 九色 熟女| 久久久久视剧HD| 丁香六月色| 亚洲情色一区| 欧美啄木乌丝袜人妻系列| 天天噜| 丁香五月激情啪啪| 婷婷丁香五月基地| 婷婷五月欧美综合| 亚洲综合新99视频| 99久久終合| 伊人久久大香线蕉AV最新午夜| 色色九区| 99综合97| 天天开心天天色| w婷婷五月婷婷w| AAAA网站| 男人先锋久久| 婷婷丁香五月激情综合站_久久五月丁香激情综合_开心五月综合激情综合五月_婷 | 夜夜骑夜夜撸| 强壮的公次次弄得我高潮A片日本 | 婷婷不卡基地| 五月色丁香成人| 国产三级秋霞| 婷婷婷婷午夜| 成年AAAA色情| 激情五月综合婷婷| 伊人婷婷大香蕉| 在线综合婷婷| 99视频内射三四| 亚洲色图日韩网址| 久久婷婷亚洲五月天| 99re热在线观看| 99精品偷自拍| 六月激情婷婷色| 五月香婷婷| 成人做爰高潮A片免费视频| 91九色精品| 色婷婷五月网| 日本熟妇乱妇熟色A片蜜桃| 97艹| 噜噜国产| 五月天婷婷涩涩| 伦乱美欧| 99国产精品白浆在线观看免费| www.久久9| 丁香五月激情澎湃一区| 欧美槡BBBB槡BBB少妇| 五月丁香综合| 天天日日夜夜| 五月天婷婷色五月天| 五月婷婷之婷婷| 国产乱人偷精品人妻A片| 欧美丁香五月| 日本97久久久精品| 婷五月天| 丁香五月色网| 五月丁香婷婷色色| 字幕网AV中文字幕| 五月天久久色| 夜夜操夜夜姧| 不卡在线中文字幕无| 天天天天天天天干| 亚洲无AV在线中文字幕| 六月婷婷日| 日本综合久久| 久久五月婷婷开心网| 91色色色| 丁香五月98| 无码九九| 五月丁香色色网| 思思99热在线| 五月天综合视频| 天堂婷婷综合| 五月六月婷婷| 9精品视频在线| 婷婷五月六月| 97超碰综合| 特黄三级片| 日本三级中国三级99| 色婷婷精品视频| 色欲影香| 97福利视频| 色婷婷婷综合五月天| 日日夜夜干| 伊人大香五月天| 久久香蕉影院| 九九99视频| 久久五月天免费网站| 丁香色五月天| 婷婷在线播放av| 九九热在线观看视频| 五月丁香手机在线| 碰碰碰97国产| 任我肏| 99在线观看视频| 99在线免费视频| 玖玖综合网| 日本久久精品| 丁香五月综合在线播放 | 久久在线视频免费观看| 久久66精品| 97色在线| 精品久久这里热66| 开心深爱五月天| 丁香婷婷五月份| 婷婷五月天堂一本在线| 国产精品久久..4399| 97自拍视频在线| 五月婷婷无码专区| 成人电影一区| 五月天婷婷色综合| 99热久久这里只有精品| 九九热精品视频在线观看| 欧美日韩一区二区三区四区| 日产精品一线二线三线芒果| 九九成人| 在线区区区| 色爱爱综合网| 亚洲中文字幕在线观看| 五月综合丁香婷婷| 久久深爱激情网| 青996青| 人妻啪啪啪| 精品A√| 99综合视频| 亚洲乱码日产精品BD| 色情综合网| 丁香五月婷婷啪啪啪| 亚洲国产精品二二三三区| 五月婷婷六月情| 日本狠狠爽| 一级性爱大片| 丁香五月天成人| 婷婷激情综合网| AAA级久久久精品| 色婷天天| 99热这里是精品| 六月婷婷狠狠| 婷婷色亚洲| 激情网色五月| 伊人五月婷| 97操操| 色五月亚洲开心网| 九九久久99| 91综合国免费久入| 9久国产精品| 色涩视频久久| 五月天播播| 秋霞电影理论| 婷婷综合成人五月天| 色99热| 色色色激情网| 影音 五月 婷婷 久久| 激情五月天电影| 日韩精品一品二区三区的使用体验| 久久久国产精品黄毛片| 26uuu亚洲| 五月天久久www| 九九热这里只有精品556| 日91高清无玛| 正宗黄色毛片| 日韩肏屄网| 91av无码| 婷婷五月综合网激情| 风流少妇A片一区二区蜜桃| 九九热精品在线| 亚洲激情电影五月天色婷婷丁香一起草| 国产精品日日躁夜夜躁| 五月丁香亚洲五月| 久久9999| 香蕉久久六月| 五月天激情四射| 五月综合激情| 亚洲激情亚洲激情| 日韩六十路91性交电影| 亚洲五月天婷婷综合| 色五月开心开心五月激情五月| 激情丁香五月婷| 婷婷丁香六月天| 思思热99在线视频| 五月天激情国产综合婷婷| 99色在线观看视频| 另类激情五月在线视频欧美| 91精品久久久久久久| 久9久成人精品视频| www.夜夜| 色婷婷成人| 丁香六月激情| 婷婷五月开心六月AV| 91在线97视频| 一本久道综合99| 色婷婷激情| 人人看人人草人人摸| 亚洲va日| 五月婷婷久久综合| 色爱终和网| 99热这里只有精品最新| 九九精品热播| 久99热| 韩日另类| 99久久久久久久| 情色婷婷五月天| 操操碰| 激情五月丁香色婷婷| 色五月色综合| 99在线观看视频| 五月丁香六月激情在线| 五月丁香久久久| 久久久久久久久久久久久久久久久精典| 日韩AV一区二区三区| 黄色成人网站在线播放| 欧美噜一噜| 可以直接看的av| 天天久久狠狠色综合| 99综合视频一体| 另类丁香五月天区图| 色99无码| 成人婷婷五月| 黄色片区子| 日本少妇裸体做爰高潮片 | 亚洲婷婷乱乱丁香| 五月天综合网| 激情久久网 | 九九精品网| 婷婷综合色色| 91九色成人原创视频| 26uuu青青| 99久久精品网| 婷婷色六月| 狠狠婷婷综合| 5月婷婷视频网站综合| 天天日天天爱天天噪| 9l视频自拍9l九色成人| 久久九九99.www| 伊人影音无码一区二区三区| 九九热精品视频在线观看| 午夜少妇在线观看视频| 开心五月丁香婷婷| 婷婷9月天| 国产激情av| hd五月婷婷在线| 婷婷九月在线| 99re免费视频| 天天看夜夜看| 亚洲精品欧洲精品| 久久久ww| 激情九九六月激情免费视频| 人人做人人看人人摸| 91啪啪视频| ...婷婷五月综合不卡,国产在线手机 | 亲子乱AV-区二区三区| 丁香五月婷婷久久综合激情网 | 久久久五月婷婷| 五月天婷婷视频| 97久操视频| 天天擼久久擼在线| 激情五月黄色| 激情五月婷婷在线区| 日本在线视频www色| 91九色 熟| 丁香五月狠狠综合欧美| 精品久热| 久久五月天大美女| 激情av| 九九久久综合| www.99热视频| 九九激情综合| 啪啪五月婷婷| 2015好吊操| 丁香五月激情网| 久久99久久99www| 综合五月天天天天天五月| 99热这里全都是精品| 草草影院爱爱| 丁香六月激情四射| 综合色播| 色天天久婷婷| 另类激情综合| 99热精品少| 日日噜噜夜夜狠狠久久丁香五月| 色五月综合婷婷久久综合婷婷久久综合婷婷久久综合婷婷久久 | 九九热精品| 五月婷婷色影院| 激情久久久久久久久久| 婷婷伊人綜合中文字幕小说| 久久这里都是精品免费| 国产精品人成A片一区二区| 超碰在线91| 亚洲综合99| 五月丁香| 丁香五月狠狠在线观看| 色色色色色色色色网站| 91九色在线视频| 色情五月婷| 久操福利| 欧美色综合天天久久综合精品 | 丁香婷婷影院| 久激情网| 国产片XXXXA片国语对白| 亚洲一色色色色色色色色| 欧洲色色| 天天插综合| 婷婷综合影院| 91碰碰碰| 岛国AV网| 97自拍视频在线| 色色五月丁香| 久久色五月天激情小说| 中文字幕不卡+婷婷五月| 综合色99| 九九综合网色全集| 能看的AV| 天天碰夜夜爽| 国产亚洲色婷婷99精品| 99青青草99| 人人干女人| 六月亚洲婷婷6月中文字幕| 伊人在线视频| 色五月婷婷老师| 一本久道综合色婷婷五月| 国产一区二区三区影院| 99爱视频| 天天成人综合视频| 99热国产精品| 亚洲国产成人AV在线| 狼友视频在线观看18| 开心五月婷婷六月丁香| 丁香婷色| www.99操.com| 99色综合| 大香蕉啪啪| 欧美丁香六月激情视频| 99人人干| 99色免费| 亚洲在线免费成人| 可以看的AV| 天天色综合网1| 天天射综合网站| 超碰97在线观看免费| 中文字幕永久免费| 狠狠高潮精品亚洲1| 婷婷五月天受日本法律保护| 五月婷婷久久久| 天天日狠狠| www91久久| 久久在线视频免费观看| 天天色播| 中文字幕激情综合| 亚洲va在线∨a天堂va欧美va| AV伊人青草丁香六月| 大香蕉啪啪啪啪啪啪| 欧美丰满熟妇BBB久久久| 香焦网五月天| 久久人妻视频| 天天色天天日| 国产性爱亚洲是图| 婷婷综合五月天亚洲综合| www.精品99| 五月天激情视频| 日韩 欧美 国产 一区 二区| 久久五月天视频| 超碰免费人人肏| 色情五月丁香| 五月天色丁香| 六月天婷婷| 综合久久久| 色五月天成人| 51国精产品自偷自偷综合| 狠狠五月天婷婷激情网。| 五月婷婷高清| 色婷婷深爱五月| 97香蕉碰碰人妻国产欧美| 91久草五月天婷婷| 加勒比日本一区二区三区| 久久综合五月天激情小说网站 | 97色色色| 99干视频| 狠狠综合| 色色啊| 色中色综合| 91超级碰在线视频| 91色婷婷综合久久中文字幕二区| 九九色综合九九色| 超碰九色| 色.五月综合网| 久久国产一区二区三区| 日韩成人精品中文字幕电影| 另类在线免费视频| 久久久久视剧HD| 婷婷五月综合基地| 中文字幕成| a色婷婷| 免费播放片大片| 狠狠干综合网| 丁香五月婷婷色| 中文字幕成人| 色五月天成人在线| 人人草人| 国产精品久久..4399| 99久久久免费| 北京熟妇搡BBBB搡BBBB| 国产在线网址1| 亚洲最大视频网站| 玖玖无码中文| 日韩狠狠色婷婷| 丁香五月激情月| 五月丁香另类网| 色99网站| 婷婷五月天色播| 欧亚成人A片一区二区| 婷婷五月天桃花网| 五月丁香婷婷综合视频| 婷婷干五月综合在线播放| ss视频xx91| 99色在线视频| 亚洲综合五月天| 人妻丰满精品一区二区A片| 国产婷婷婷| AV中文字幕夜夜操b天天摸bb | 丁香五月,激情五月,深爱五月| 五月丁香婷婷伊人| 久久免费9| 久热re在线视频| 五月婷中文字幕| 在线观看996精品| 青吴乐视频| 国产婷婷综合在线免费视频| 丁香五月婷婷呀| 婷婷激情社区| 色五月丁香五月| 久久新地址| 五月婷在线| 超喷97免费在线视频| 色色色色色五月| 五月丁香色婷婷婷基地| 五月色情婷婷开心五月色情| 久久婷婷五月丁香网| 美女主播野战视步页| 丁香五月影院| 九色综合网| 五月婷婷天堂| 丁香五月天在线| 天天操夜夜操| 99干日本| 妻久久人久久| 五月丁香婷婷钟和色图| 性色欲情 网站| 深爱婷婷网| 极品人妻VIDEOSSS人妻 | 色操b| 五月天色图| 香蕉AV777XXX色综合一区| 91久久久久久| 亚洲精品视频在线播放| 九九激情| 久在线综合69| 五六月丁香激情视频| 色婷婷久久综合| 欧美日韩婷婷五月天| 九九九精品视频免费观看| 97操碰在线视频| 婷婷五月综合国产精品| 日日干综合| 五月丁香999| 婷婷久久影院| 丁香五月婷婷社区| 亚洲中文乱字字幕线在永久| 人人人va亚洲视频在线| 麻豆AV一区二区三区| 97在线视频观看| 天天干天天做| 狠狠情色| 亚洲精品99| 日本熟女啪啪| av中文网站| 深夜婷婷 丁香| 亚洲人人96@| 五月丁香黄色视频| 3p九色在线| 亚洲天堂大香蕉| 操人妻视频91| 激情婷婷黄色五月| 五月丁香啪啪拍| 97色色色| 超碰97免费在线| 激情小说在线视频| 国产97色在线 | 日韩| 天天射影院| 婷婷五月天视| 亚洲无AV在线中文字幕| 婷婷五月色丁香在线看| 玖久久网站| 亚洲国产色色| 婷婷影院欧美| 日本啪啪网| 99国产精品久久久久久久久久久| 91超级碰人人操| 99热精品中文字幕| 99热亚洲精品| 亚洲99热| 九九久久99| 伊人久久丁香狠狠婷婷综合香蕉 | 丁香五月激情久久麻豆| 精品国产va久久久| 综合久久高清| 五月丁香激情综合| 米奇影视五月天| 91综合网| 另类激情五月| 五月婷婷久久激情| 久久精品一区二区三区四区| 色噜噜,噜噜色| 亚洲成人网站在线播放| 99热99成人| 精品久久久久成人码免费动漫| 婷婷成人综合五月| 視频福利乱色| 丁香婷婷久久 | 久久婷婷五月综合色奶水99啪| 九月丁香亭亭| 一二三区视频韩国| 99九九视频精彩在线| 久久视频这里有精品99| 天天夜夜操| www.婷婷,com| 俺去也五月| 99色亚洲| 91丁香五月| 午夜婷婷| 九色视频入口91| WWW久久久| 婷婷丁香成人网址| 啪啪综合| 91聚色综合网| 五月婷婷香| 开心五月激情婷婷| 久久这里这里有精品免费视频| 色婷婷香蕉| 久热最新视频 | 黄网在线观看免费| 538在线精品| 五月丁香婷婷六月| 五月开心六月婷婷在线播放网站| 国产99久9在线| 六月丁香久久| 97超碰在线免费观看| 思思热精品免费视频| 99热加勒比| 成人AV在线中文版| 色色网站| 婷婷五月天影视首页| 五月婷婷六月爱| 综合99综合久久久久久久| 久久您您综合网| 成功精品影院| 久久亚洲无码| 五月婷婷丁香瑟瑟视频| 日本女天天爽| 99riAV国产精品视频| 久久久国产精品黄毛片| 97福利视频| 五月婷婷亚洲色视频| 美女激情婷婷| 婷婷五月深深的爱| 性色欲情 网站| www91在线| 色都都狠狠色都都色综合色| 五月Huangsewang| 丁香五月av| 婷婷五月激情欧美| 超碰猛烈的性猛交| 天天射影院| 99在线亚洲| 午夜婷婷五月天在线| ss五月天激情| 婷婷五月天伊人在线| 色色色色综合网| 色五月婷婷综合在线| 3DAV亚洲香蕉久久 一区二区| 国产精品久久久久久久久久免费| 日日撸夜夜操| 久草热在线视频| 成片免费观看视频大全| WWW.婷婷五月天.COM| 精品人妻伦一二三区久| 日日夜夜狠狠| 999精品乱码77777| 综合久久综合久久| 婷婷久久大香蕉| 色五月成人| 日韩啪啪网| 吊色AV男人的天堂| 91色碰| 色婷在线视频| 亚洲小电影在线观看黄999| 97超碰在线免费观看| 日本精品干| 九色 在线| 97操视频| 天天看片日日夜夜| Jh7Uf088VHafNm| 婷婷五月色亚洲| 五月婷婷 激情五月| 开心网五月色婷婷| www.久久久久久久| 久久免费精彩视频| 91av传媒高清在线视频网| 99热8在线| 月丁香久久久| 99精品热视频| 人人舔人人色人人高潮| 色欲天天综合| 色噜噜狠狠色综合成人网| 狠狠香蕉| 怡红院AV亚洲一区二区三区H | 亚洲AV成人一区二区在线观看| 久久免费高| 综合色吧| 噜噜色五月| 亭亭五月激情亚洲在线| 少妇人妻人伦A片| 五月天综合视频| 亚洲深喉AV| 综合婷| 丁香色色网| 日韩六六久久电影| 婷婷五月天视频免费在线观看| 欧美日韩99| 人妻尝试久久久久久久久久久久| 丁香五月激情五月开心五月| 激情六月天婷婷| 激情又色又爽又黄的A片| 九九亚洲综合| 强辱丰满人妻HD中文字幕| 99久| 97人人干人人操| 五月天久久成人| 偷拍91九色| 少妇AB又爽又紧无码网站| 性色综合网| 欧美综合激情| 丁香五月玖玖| 日韩九九视频| 色综合天天天天做夜夜| 激情五月婷婷五月丁香五月开心五月| 色播五月天激情| 婷婷综合| 狼人婷婷久久| 这里只有精品免费视频在线观看| 丁香五月激情婷婷| 91窝窝| 久er7久热| 丁香五月在线播放| 婷婷五月花| aa久久| 婷婷六月五月天综合| 这里只有精品视频免费在线观看| 丁香五月WWW| 婷婷六月天| 日韩av免费版| 日操| 久热大香蕉| 99热 在线播放| 午夜九九电影| 人妻久久久久久| 色丁香五月| 五月开心深爱激情网| 婷婷五月天小说| 91碰| 五月婷婷深深爱| a毛片二逼wwwwwwwwww| 桃色激情婷婷伊人网| 这里只有精品视频99| 色婷成人狠干| 国产精品香蕉| 九九99精品视品| 深爱激情九九五月天| AVDV久久| 狠狠舔| 五月天堂色| 天天综合 99久久婷婷| 最新丁香六月婷婷| 国产高潮白浆一区二区| 丁香五月激情婷婷| 成人综合视频网址| 亚洲婷婷丁香五月视频| 中文字幕有多少字| 日日操,日日爽| 五月天社区| 秋霞黄色一级久久| 色婷婷电影网| 色五月天影视| 午夜一区| 岛国资源网| 亚洲亚洲人成综合网络| 婷婷丁香成人在线视频| 婷婷五月天综合网| 丁香五月狠狠综合欧美| 在线1青婷| 五月婷婷六月丁香| 成人丁香五月| 成人丁香五月| 深爱 五月天| 九九色逼| 五月综合777| 九月丁香久久网| 九九爱激情| 成人一区在线观看| 91人人操人人爱| 午夜免费试看| 五月天婷婷激情| 五月天婷婷色小说| 草久私拍| 亚洲免费观看高清完整版AV线| 一区二区乱码视频| 26uuu亚洲| AV 3P| 9色小视频在线观看| 思思热视频| 久久久8| 国产精品99久久久久久久女警| 玖玖精品视频99| 中文字幕精品推荐免费在线观| 亚洲va国产va天堂va综合va| 在线视频另类| 性做爰1一7伦| 丁香五月成人av| 成人av在线网站| 丁香色五月 97干| 天天射综合网夜夜操| 九九超日本| 久久这里都是精品| 婷婷四色成人综合色视| 六月婷婷九月丁香| 99精品无码| 五月丁香在线综合| 亚洲AV成人在线| 婷婷丁香五月天婷婷| 99这里有精品| www.minyis.com【JT】实力收量可预付QQ2101460746 | 婷婷的99视频网站| 亚洲日本韩国| www.9797国产| 婷婷五月天伦理| 日韩免费99| 伊人色综合网| 久久免费精彩视频| 天天免费成年人视频| 99ri国产精品| 99ER热精品视频| 停婷丁五月在线| 激情精品久久| 五月丁香婷婷激情影院欧美| 成人综合网站| www.色色五月天.com| 五月丁综合在线观看| 爆乳熟女一区二区三区爆乳| 国产精品久久久爽爽爽麻豆色哟哟| 天天日天天爽| 好好干av| 草综合网| 亚洲无码11| www.91五月| 五月丁香色| 丁香五月天成人网站| 婷婷综合五月天激情| 91人人操人人爱| 丁香花狠狠婷婷亚洲中文字幕| 偷拍五月丁香| 亚洲免费av在线| www久热com| 99热99热在线观看| 99色干| 婷婷第一页| 婷婷综合性爱网| 婷婷成人五月天| 五月丁香婷婷色色色| 婷婷五月天欧美图片在线播放电驴| 天天射夜夜爽| 五月天开心色情网| 日韩综合久| av一区二区电影免费在线观看| 日韩成人免费电影| 国产精品久久..4399| 亚洲精品永久久久久久| 思思久热| 精品综合五月| 色丁香在线视频| 欧美成性色| 色九网| 欧美色久| 丁香六月激情四射| 五月丁香综合中文| 激情丁香久久| 久久九九九九| 婷婷久久在线| 丁香熟女乱| 日韩精品呦呦va| 天天日夜夜夜操操操操| 999热在线视频| 狠狠色大香蕉| 只有精品在线观看| 婷婷五月激情图片| 欧美在线97| 爆乳熟女一区二区三区爆乳| 亚洲四色五月| 9久久精品视频| 五月天丁香欧美激情| 一区二区你懂的| 五月婷护士| 久久99网| 99色.com| 超碰99热精品| www.五月天婷婷| 五月综合丁香婷婷| 色综合久久88色综合天天99| 婷婷99狠狠躁天天躁中| 成人视频一区| 日韩色色网| 99热这只有| 深爱五月天 开心网| 五月天婷婷五月| 人人爱人人摸人人澡| 日韩在线视频网站| 亚洲精品午夜国产va久久成人| 色五月首页| 久久久久丁香婷婷五月天| 五月婷婷在线视频观看| 五月丁香婷婷色色色| 激情亚洲网| 国产精品涩涩涩视频网站| 女人被躁到高潮嗷嗷叫小| 97夫妻超碰| 亚洲无码九九九| 亚州操操| 韩日另类| 国产精品一区在线观看你懂的| 欧美成人一区二区三区在线视频| 99综合五月免费视频色婷婷| 久久久九九视频精品18| 五月丁香婷草| 熟妇内谢69XXXXXA片| 婷婷综合九色伊人| 大香蕉娱乐| 综合久| 亚洲色情一区二区三区四区| 99热在线免费| 99久在线观看| 风流少妇A片一区二区蜜桃| 丁香操逼| 综合久| 色丁香久综合在线久综合在线观看| 五月婷婷影| 婷婷五月天成人网站| 森林影视大全,最好看的2019年视频 | 色操综合| 91色综合网| 五月丁香好婷婷姑娘综合网| 婷婷激情社区| 成人丁香五月天| 久久精99| 91九色精品熟女内射| 亚洲 小说 欧美 激情 另类| 欧美影院| 99干日日干| 午夜九九九九九九九九九九九九九| 五月天综合缴情网网站0| 天天激情站| 女人天堂AV| 99热只有精品在线| 干婷婷五月天| 99热在线观看精品| 激情五月天天| 思思99热这里只有精品| 思思热AV| 国产精产国品一二三在观看 | 九九成人视频| 国产偷人爽久久久久久老妇APP | 婷婷欧美色| 天天天天干| 艳妇野外情欲放荡HD| 婷婷丁香五月麻豆| 五月色综合网| 激情婷婷丁香| www.99色| 99久久精品免费精品国产_国产精品久久久久久_国产在线|日韩_久久国产精品电影 | 一区二区无码视频| 狠狠五月激情在线| 91人人操人人爱| 操逼综合激情网| 五月丁香六月婷婷综合免| 五月色丁香| 色婷婷成人久久| 中文人妻主播久久| 伊人久久丁香狠狠婷婷综合香蕉 | 五月狠狠| www.亚洲激情| 在线另类| 99啪啪| 九九热婷婷| 亚洲成人AV电影网| 色色婷婷综合网| 久久女婷| 超碰狠狠操| AV在线观看网站| 日韩无码乱轮| 色在线视频网2025| 91精品91久久久久77777| 激情精品久久| 五月天社区| 99爱视频精品| 久久98| 色综合久久综合中文综合网| 99热色精品| 五月丁香婷婷综合网色欲| 婷婷综合伊人丁香| 亚洲成人AV电影在线| 激情婷婷五月天伊人在线观看| 午夜丁香婷婷| 激情综合网丁香| 色色色9| 激情五月天丁香| 97自拍视频在线| 九九aV| 亚洲亚洲人成综合网络| avh片在线观看| 五月婷婷激情69| 亚洲深喉aV| 色宗合久久五月婷婷| 国产精产国品一二三在观看| 五月天婷五月天综合网在线观| 五月婷婷六月天| 五月天伊人av| 五月天社区| 色婷婷六月综合| 久热这里只有精品视频免费观看| 色综合色| 五月激情婷婷六月丁香| 国产肥白大熟妇BBBB视频| 青青草蜜臀| 天天干天天日蜜臀av| 久99视频| 色色色色色色网| 啪啪色区| 五夜婷婷| 色五月婷婷激情综合网| 开心激情婷婷| 天插天啪天啪天啪| 天堂网操| 激情六月天婷婷| 天天操天天日天天爱| 婷婷五月天影院| 天天日天天操天天干| 天天插天天插| 立川无码av| 不卡在线中文字幕无| 日韩99色99| 天天操天天曰天天射| 超碰国产在线| 色五月av伊人| 亚洲综合碰| 任你日视频| 婷婷五月天伊人在线| 五月丁香色欲| 97超碰在线免费观看| 婷婷色女| 沈娜娜av| 欧美人人操| 五月激情久久综合| 99热在线爱| 色99色| 久热这里只有精品视频免费观看| 日韩av在线免费观看| 色噜噜狠狠色综无码久久合欧美| 色五月成人在线| 久久综合中文字幕| 国产成人片| 天天天干夜夜夜操| 丁香六月天AV| 色婷婷无吗| 天天干天天拍| 色综合色综合色综合色综合| 激情婷婷五月天。| www.久久久久久久久久.com| 国产亚洲99久久精品| 精品久久久久久久人妻| 中文资源在线a| 精品成人在线| 亚洲色啪| 亚洲激情综合免费| 国产FREESEXVIDEOS性中国| 亚洲视频伍月婷婷| 丁香女人五月天| 久久国产高清| 青草视频在线观看视频| 狠狠爱婷婷丁香| 天天cha成人综合网| 婷婷五月情| 激情婷婷。| 亚洲乱码日产精品BD| 午夜成人综合| 99色免费视频| 成年AAAA色情| 久久久久亚洲AV无码网影音先锋| 日韩性爱AV| 五月天婷婷久久视频| 色噜噜狠狠一区二区三区| 深爱五月天婷综合| 久久婷综合| www.com.色色| 国产干逼片| 成人无码髙潮喷水A片| 婷婷涩五月| 野战毛片三一3| 五月丁香青草综合啪啪| 五月激情五月丁香| www.色9| 色婷婷综合丁香五月天| 九九亚洲天堂| 国产成人网址| 五月婷婷激情综合网| 91视频综合网| 色色网站在线| 丁香五月婷婷俺也要去| 婷婷丁香久久五月综合| 91超级碰碰| 色婷婷丁香综合中文字幕| 9色在线视频精品观看| 激情五月天婷婷播播久久综合91 | 五月天开心网| 婷婷午夜| 99热这里都是精品| 国产精品国产| 26uuu另类亚洲欧美日本一| 97啪啪| 婷婷五月天Av| 日本色色网站| 色欧美日| 天堂AV三级| 亚洲一级色电影| 天天综合久久| 超级碰碰碰碰视频| 操逼巨乳91| 9 1 A v久久久| Caoporn公开| 神马久久五月天| 丁香五月激情五月色综合| 亚洲狠狠色丁香婷婷综合久久| 蜜桃人妻无码AV天堂三区| h在线看免费版在线看| 婷婷五月激情小说| 九九热最新视频| 色五月婷婷av| 亚洲综合激情五月久久| 亚洲色婷婷| 五月丁香亭亭| 婷婷五月天影院| 性av| 丁香婷婷九月在线| 亚洲 在线 另类| 亚洲欧美日韩VIP| 猫咪伊人AV| 五月丁香A片| 久久99久久久| 伊人久久大香线蕉av最新| 久99久视频| www.婷婷网| 六月色狠狠色| 色婷婷色人人射| 夜夜爱网站| 亚洲av综合网| 久久五月丁香| www.91av.com| www.玖玖婷婷在线| 丝袜激情网| 天天色99| 色色色综合色| 精品香蕉99久久久久网站 | 久久婷婷五月天蜜桃| 91色五月| 久婷婷五月丁香在线观看| 五月丁香婷婷激情在线| 色婷婷五月天小说| 色天堂在线| 五月婷婷大香蕉| 亚洲欧洲美女在线观| 在线成人视频免费| 啪啪色激情五月天| 久久99久久99精品免观看软件| 婷婷天天色| 香蕉久久国产AV一区二区| 嫩草AV久久伊人妇女超级A| 色色色色色日韩午夜激情 | 中文字幕操比影片| 色色色五月婷| 热99精品视频观看| 日本颜色视频人人爱| 久久性视频| 99燥99日| 4438激情网| 五月丁香六月婷婷在线小说视频| 99热这里只有精品国产精品| 91人操人人人操人| 极品人妻VIDEOSSS人妻| 五月丁香婷婷综合网色欲| 六月丁香婷婷五月天| 麻豆五月丁香婷婷| 91黄操| 三级片AAA久久久AAA久久久AAA| 狠干综合| 日日色五月天| 夜夜爱伊人| 91性交在线播放| 色玖玖综合网| 五月婷婷狠狠干| 九九热只有精品| 99久久天堂婷婷| 激情五月天啪啪视频| 夜夜谢天天干| 亚洲亚洲人成综合网络| 色婷婷五月天成人网| 99秘 在线| 欧美日韩99| a片在线免费观看一区| 五月丁香六月日逼| 中文字幕精品在线观看| 热99色| sS丁香五月婷婷| 九九青草热| 婷婷9月天| 激情开心五月婷婷| 色综合婷婷| 久久99三级在线视频| 99精品在| 五月天com| 另类 在线| 色婷婷社区| 黄桃AV无码免费一区二区三区| 在线成人网站| 99综合| 六月色 亚洲| 婷婷免费无视频| 在线99热| 黄网在线免费观看| 九九精品热播| 久久五月天激情婷婷| 思思热在线视频99| 人人摸人人干| 婷婷激情中文综合| 情色婷婷五月天| 一婬一伦一区二区三区| 婷婷五月噜噜| 99国产精品久久久久久久久久久 | 丁香婷婷基地| 久久人人九九| 任你操精品免费| 99精品在线观看视频| 色碰97| 艾小青av| 性做爰A片免费视频A片直播 | 婷婷六月色开| 婷婷五月丁香花综合| 夜夜爱网站| 婷婷丁香五月天色色| 中文字幕色色| 婷婷丁香五月综合久久| 久噜久噜| 久久人人添人人爽添人人片αV| 岛国av网| 99视频这里有精品| 色五月婷婷视频| 色色欧美。| 色五月视频无码播放| 无码激情AAAAA片-区区| a69在线视频| 国外亚洲成AV人片在线观看| 五月丁香va| 色婷婷呢狠禁久禁| 国色天香伊人狠狠色| 欧美日韩国产成人在线|