亚洲有码Av一区二区三区_国产高清啪啪免费视频_69色视频国产_国产成人人人爆出白浆_国产精品自在线拍国_一本久久伊人热热精品无码_午夜性刺激在线看免费带字幕_助力高品质欧美狂喷水_亚洲精品日韩无码_精品无码一区二区三区蜜臀_麻豆高清国产AV_熟妇人素无码中文字幕_亚洲a级片在线观看_国产欧美日韩三区_99国产成人高清在线观看

ARTICLE DETAIL

資訊詳情

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

OIS/DVS如何毀掉SLAM數(shù)據(jù)?VideoIMUCapture-Android采集對(duì)齊的IMU與視頻

OIS/DVS如何毀掉SLAM數(shù)據(jù)?VideoIMUCapture-Android采集對(duì)齊的IMU與視頻 簡(jiǎn)介VideoIMUCapture-Android是一款面向SLAM與SfM研究者的Android數(shù)據(jù)采集工具可同步捕獲視頻、IMU及相機(jī)元數(shù)據(jù)并對(duì)光學(xué)防抖OIS導(dǎo)致的逐幀相機(jī)參數(shù)漂移問(wèn)題提供警告與OIS數(shù)據(jù)支持適合需要構(gòu)建高質(zhì)量3D重建數(shù)據(jù)集的開(kāi)發(fā)者、科研人員學(xué)習(xí)使用。資源共121個(gè)文件以Java源碼、XML資源、Python腳本和Gradle構(gòu)建配置為主涵蓋Camera2 API調(diào)用、protobuf數(shù)據(jù)格式定義、Dockerfile及Shell輔助腳本壓縮包僅3.37MB工程結(jié)構(gòu)緊湊便于按模塊閱讀或二次開(kāi)發(fā)。目前已有618人學(xué)習(xí)下載。借助這套工程讀者可快速掌握同步時(shí)鐘下H.264視頻與約100Hz IMU數(shù)據(jù)的采集框架理解OIS與DVS的差異并基于現(xiàn)成代碼擴(kuò)展自己的數(shù)據(jù)記錄流程為后續(xù)SLAM算法測(cè)試或視覺(jué)慣性里程計(jì)實(shí)驗(yàn)提供可直接復(fù)用的基礎(chǔ)實(shí)現(xiàn)。1. 錄SLAM數(shù)據(jù)為什么必須關(guān)OISVideoIMUCapture-Android 解決的不是“能錄視頻”用 ORB-SLAM3 跑手機(jī)上錄好的視頻軌跡卻直接飛掉這是我在測(cè)試視覺(jué)慣性里程計(jì)時(shí)最常見(jiàn)的翻車(chē)現(xiàn)場(chǎng)。后來(lái)才意識(shí)到問(wèn)題多半不在算法而在采集端手機(jī)默認(rèn)開(kāi)了 OIS 和 DVS畫(huà)面穩(wěn)了內(nèi)參卻變了。VideoIMUCapture-Android 就是為這個(gè)場(chǎng)景準(zhǔn)備的——一次抓齊視頻、IMU 數(shù)據(jù)、相機(jī)參數(shù)并把設(shè)備是否支持、當(dāng)前是否開(kāi)啟 OIS 一并告訴下游。它要解決的不是“能錄像”而是“錄出來(lái)的數(shù)據(jù)能被 SLAM 與 Structure from MotionSfM直接使用”。適合兩類(lèi)人跑 VIO/SLAM 算法做數(shù)據(jù)集驗(yàn)證的以及用 SfM 重建需要干凈視頻源的。2. OIS 與 DVS 的差別兩種防抖如何毀掉 SLAM 與 SfM 的內(nèi)參和時(shí)間戳要理解這個(gè)采集工具為什么把 OIS 和 DVS 單獨(dú)拎出來(lái)講得先把這兩種防抖的本質(zhì)說(shuō)清楚。光學(xué)圖像穩(wěn)定OIS是物理層面的錄制時(shí)鏡頭模組或感光元件會(huì)沿 XY 方向平移用來(lái)抵消手部抖動(dòng)。數(shù)字視頻穩(wěn)定DVS是算法層面的相機(jī)先把整個(gè)傳感器畫(huà)面讀出來(lái)再做邊緣裁剪和幀間對(duì)齊最終輸出一幀“看起來(lái)沒(méi)抖”的圖像。兩者最直接的區(qū)別是作用對(duì)象不同但它們的副作用對(duì) SLAM/SfM 是一樣的——?dú)?nèi)參、亂時(shí)間戳。2.1 OIS 是鏡頭漂移DVS 是畫(huà)面裁剪兩者都讓內(nèi)參“時(shí)變”先看 OIS。當(dāng)鏡頭模組為補(bǔ)償抖動(dòng)而平移時(shí)光線(xiàn)到達(dá)傳感器的路徑改變了等效焦距和主點(diǎn)坐標(biāo)都在微變也就是內(nèi)參矩陣不再是常量。SLAM 里三角化、PnP、光束法平差全都建立在“內(nèi)參恒定”這個(gè)前提上一旦內(nèi)參隨每一幀波動(dòng)特征點(diǎn)的幾何關(guān)系就被系統(tǒng)性污染。更要命的是Android 公共 Camera2 API 通常只能讀出 OIS 的開(kāi)關(guān)模式拿不到鏡頭平移的位移量。這意味著你無(wú)法在后處理里補(bǔ)償它只能關(guān)掉它。再看 DVS。數(shù)字穩(wěn)定典型的實(shí)現(xiàn)是“先多讀幾行再裁剪平移窗口”。裁剪窗口每幀都可能不一樣等效焦距就跟著變幀間對(duì)齊還會(huì)引入時(shí)間緩沖讓視頻幀的真實(shí)曝光時(shí)間被平移了幾個(gè)幀周期。對(duì) SfM 來(lái)說(shuō)裁剪只是損失一點(diǎn) FOV但特征點(diǎn)匹配本身還能做對(duì)基于慣性數(shù)據(jù)緊耦合的 VIO 來(lái)說(shuō)視頻幀的時(shí)間戳一旦和 IMU 時(shí)間戳不對(duì)齊視覺(jué)和慣性的約束關(guān)系就錯(cuò)位了軌跡發(fā)散是必然的。兩者對(duì) SLAM/SfM 的影響差異可以放在一起看對(duì)比項(xiàng)OIS 光學(xué)防抖DVS 數(shù)字穩(wěn)定作用機(jī)制鏡頭/傳感器物理平移畫(huà)面裁剪與幀間對(duì)齊對(duì)內(nèi)參影響等效焦距和主點(diǎn)微變裁剪窗口變化導(dǎo)致 FOV 變化對(duì)時(shí)間戳影響影響較小主要是曝光時(shí)刻改變引入幀緩沖時(shí)間戳明顯偏移是否可補(bǔ)償公共 API 一般拿不到位移量可通過(guò)關(guān)閉算法避免SLAM 采集合適性必須關(guān)閉必須關(guān)閉有一類(lèi)設(shè)備支持“OIS 數(shù)據(jù)輸出”這也是標(biāo)題里特別強(qiáng)調(diào)的點(diǎn)。所謂“可以提供 OIS 數(shù)據(jù)”指的是系統(tǒng)能在 CaptureResult 里返回當(dāng)前幀 OIS 是否生效、生效模式是哪種。這個(gè)信息對(duì)算法有實(shí)際價(jià)值即便你忘了關(guān) OIS下游至少能通過(guò)這個(gè)字段把可疑的幀過(guò)濾掉。但請(qǐng)注意大多數(shù)手機(jī)不會(huì)把鏡頭位移的原始數(shù)值開(kāi)放給應(yīng)用層所以別指望拿它做精確補(bǔ)償。2.2 用 Camera2 檢測(cè)設(shè)備是否支持 OIS一份可控的 Kotlin 代碼理解了這兩種防抖的原理落地第一步就是在采集前檢測(cè)設(shè)備能力。VideoIMUCapture-Android 這類(lèi)工具一般會(huì)在啟動(dòng)時(shí)把相機(jī)能力讀出來(lái)寫(xiě)入 sensor_info.json方便后續(xù)排查。檢測(cè) OIS 和 DVS 支持情況的代碼不難用 Camera2 的兩個(gè)固定字段即可fun checkStabilizationSupport(cameraId: String): PairBoolean, Boolean { val characteristics cameraManager .getCameraCharacteristics(cameraId) // OIS 支持列表LENS_INFO_AVAILABLE_OPTICAL_STABILIZATION val oisModes characteristics.get( CameraCharacteristics.LENS_INFO_AVAILABLE_OPTICAL_STABILIZATION ) ?: intArrayOf(CameraMetadata.LENS_OPTICAL_STABILIZATION_MODE_OFF) // DVS 支持列表CONTROL_AVAILABLE_VIDEO_STABILIZATION_MODES val dvsModes characteristics.get( CameraCharacteristics.CONTROL_AVAILABLE_VIDEO_STABILIZATION_MODES ) ?: intArrayOf(CameraMetadata.CONTROL_VIDEO_STABILIZATION_MODE_OFF) val oisSupported oisModes.any { it ! CameraMetadata.LENS_OPTICAL_STABILIZATION_MODE_OFF } val dvsSupported dvsModes.any { it ! CameraMetadata.CONTROL_VIDEO_STABILIZATION_MODE_OFF } return oisSupported to dvsSupported }這段代碼先通過(guò)LENS_INFO_AVAILABLE_OPTICAL_STABILIZATION拿到設(shè)備支持的 OIS 模式數(shù)組。數(shù)組里出現(xiàn)OFF之外的模式比如ON、AUTO說(shuō)明硬件支持光學(xué)防抖。同理CONTROL_AVAILABLE_VIDEO_STABILIZATION_MODES用于確認(rèn)是否支持?jǐn)?shù)字穩(wěn)定。代碼里?: intArrayOf(...)的兜底寫(xiě)法很關(guān)鍵部分低端設(shè)備或定制 ROM 不實(shí)現(xiàn)這兩個(gè)字段返回 null按“不支持”處理而不是崩潰。要注意的是這個(gè)檢測(cè)結(jié)果只代表“硬件/系統(tǒng)能力”不代表錄制時(shí) OIS 真的開(kāi)啟。是否生效要看每一幀 CaptureResult 里的LENS_OPTICAL_STABILIZATION_MODE實(shí)際值。我一般會(huì)在每一幀的回調(diào)里把這個(gè)值拉出來(lái)寫(xiě)入日志道理后文會(huì)講OIS 不是設(shè)置了就一定生效個(gè)別設(shè)備的 HAL 層會(huì)偷偷改回 AUTO。本節(jié)這個(gè)函數(shù)只是“設(shè)備畫(huà)像”真正起約束作用的是后面采集時(shí)的 CaptureRequest 設(shè)置。3. 從零搭建采集管線(xiàn)VideoIMUCapture-Android 的最小可用配置這一章解決“怎么跑起來(lái)”的問(wèn)題。VideoIMUCapture-Android 通常是一個(gè) Android Studio 工程Gradle 構(gòu)建核心模塊一般分成 camera相機(jī)預(yù)覽與控制、sensorIMU 采樣、recorder編碼落盤(pán)、calib參數(shù)導(dǎo)出幾塊。多數(shù)情況下你不需要改核心邏輯只需要配置好權(quán)限、選對(duì)目標(biāo)設(shè)備就能開(kāi)始錄第一段數(shù)據(jù)。但配置過(guò)程中有幾個(gè)位置很容易踩坑下面按順序展開(kāi)。3.1 工程結(jié)構(gòu)與權(quán)限AndroidManifest 里必須聲明什么采集應(yīng)用要碰的外設(shè)很直接相機(jī)、陀螺儀、加速度計(jì)有時(shí)還有麥克風(fēng)MediaRecorder 在部分版本上即使不錄音頻也可能要求聲明音頻權(quán)限。先看一份最小可用的 AndroidManifest 配置uses-feature android:nameandroid.hardware.camera.any android:requiredfalse / uses-feature android:nameandroid.hardware.sensor.gyroscope android:requiredfalse / uses-permission android:nameandroid.permission.CAMERA / uses-permission android:nameandroid.permission.WRITE_EXTERNAL_STORAGE android:maxSdkVersion29 / uses-permission android:nameandroid.permission.RECORD_AUDIO /三點(diǎn)說(shuō)明。第一相機(jī)和陀螺儀都聲明為requiredfalse這樣應(yīng)用可以安裝到?jīng)]有陀螺儀的低端設(shè)備上運(yùn)行時(shí)再做能力檢測(cè)并降級(jí)處理。第二WRITE_EXTERNAL_STORAGE加maxSdkVersion29是給 Android 10 及以下版本用的Android 11 之后強(qiáng)制分區(qū)存儲(chǔ)應(yīng)用直接寫(xiě)自己的外部目錄不需要這個(gè)權(quán)限。第三錄音權(quán)限看著多余但 MediaRecorder 在視頻源設(shè)置為 SURFACE 時(shí)部分 OEM 驅(qū)動(dòng)仍會(huì)檢查RECORD_AUDIO不聲明會(huì)直接啟動(dòng)失敗所以寧可保留。權(quán)限的動(dòng)態(tài)申請(qǐng)建議在進(jìn)入錄制頁(yè)面前一次性完成不要在錄制中途彈窗。原因很簡(jiǎn)單彈窗會(huì)打斷錄制倒計(jì)時(shí)而且 Camera2 的打開(kāi)流程和權(quán)限回調(diào)交織在一起代碼會(huì)變得很難維護(hù)。錄制過(guò)程中一旦出現(xiàn)權(quán)限被撤回部分國(guó)產(chǎn) ROM 有“后臺(tái)權(quán)限回收”MediaRecorder 會(huì)以異常結(jié)束數(shù)據(jù)文件全部作廢。3.2 錄制 H.264 視頻與高頻 IMU兩套時(shí)鐘域的統(tǒng)一方案采集管線(xiàn)的核心工作有兩件用 Camera2 MediaRecorder 錄 H.264 視頻用 SensorManager 以最高頻率收加速度計(jì)和陀螺儀數(shù)據(jù)。先看 MediaRecorder 的配置片段val recorder MediaRecorder() recorder.setVideoSource(MediaRecorder.VideoSource.SURFACE) recorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4) recorder.setVideoEncoder(MediaRecorder.VideoEncoder.H264) recorder.setVideoEncodingBitRate(20 * 1000 * 1000) recorder.setVideoFrameRate(30) recorder.setVideoSize(1280, 720) recorder.setOrientationHint(0)參數(shù)上我一般這樣定編碼選 H.264 MP4這是所有 SLAM 工具鏈和后處理腳本最容易解析的組合碼率給 20 Mbps 對(duì) 720p 30fps 足夠不要盲目拉到 50 Mbps會(huì)讓中端手機(jī)寫(xiě)入卡頓、掉幀更嚴(yán)重分辨率選 1280x720 而不是 4K因?yàn)橐曈X(jué)里程計(jì)和 SfM 用的特征點(diǎn)分辨率并不需要多高720p 在室內(nèi)紋理下已經(jīng)能提取充足特征還省存儲(chǔ)空間。真正需要花心思的是 IMU 的時(shí)鐘域問(wèn)題。SensorManager 的SensorEvent.timestamp單位是納秒但它的時(shí)鐘起點(diǎn)因設(shè)備而異有芯片直接給 boot time也有驅(qū)動(dòng)換算過(guò)。直接把event.timestamp寫(xiě)進(jìn) CSV會(huì)遇到“同一秒內(nèi) IMU 時(shí)間戳和視頻幀時(shí)間戳對(duì)不上”的怪問(wèn)題。我一般不用它作為 CSV 主時(shí)間戳而是在回調(diào)到達(dá)時(shí)取SystemClock.elapsedRealtimeNanos()val listener object : SensorEventListener { override fun onSensorChanged(event: SensorEvent) { // event.timestamp 只用于同一傳感器隊(duì)列內(nèi)的排序 val unifiedTimestampNs SystemClock.elapsedRealtimeNanos() imuWriter.writeLine( event.sensor.type, unifiedTimestampNs, event.values[0], event.values[1], event.values[2] ) } override fun onAccuracyChanged(sensor: Sensor, accuracy: Int) {} } sensorManager.registerListener(listener, accelerometer, SensorManager.SENSOR_DELAY_FASTEST) sensorManager.registerListener(listener, gyroscope, SensorManager.SENSOR_DELAY_FASTEST)這段代碼里的關(guān)鍵是“統(tǒng)一用elapsedRealtimeNanos()落盤(pán)”。elapsedRealtimeNanos()基于系統(tǒng)單調(diào)時(shí)鐘包含休眠時(shí)間原生支持跨傳感器比較。event.timestamp則保留用于調(diào)試——如果它和你寫(xiě)入的elapsedRealtimeNanos()之間存在固定偏移且漂移穩(wěn)定說(shuō)明驅(qū)動(dòng)時(shí)鐘沒(méi)毛病如果偏移亂跳那是設(shè)備驅(qū)動(dòng)的問(wèn)題換機(jī)比換代碼快。IMU 采樣率上SENSOR_DELAY_FASTEST是能申請(qǐng)到的最高頻率實(shí)際收到的頻率通常在 200 Hz 到 500 Hz 之間取決于設(shè)備型號(hào)。對(duì) VIO 算法來(lái)說(shuō) 200 Hz 的陀螺儀已經(jīng)夠用不需要更高。還要提醒一句注冊(cè)監(jiān)聽(tīng)時(shí)不要漏了onAccuracyChanged回調(diào)里至少要記錄精度等級(jí)精度突然變?yōu)?0不可信時(shí)對(duì)應(yīng)的 IMU 片段最好在數(shù)據(jù)集說(shuō)明里標(biāo)注出來(lái)。3.3 落盤(pán)文件組織video、imu.csv、camera_params 各放哪采集結(jié)束不能只有一個(gè)視頻文件。SLAM 算法需要的是視頻、IMU、相機(jī)參數(shù)、設(shè)備信息多路對(duì)齊的數(shù)據(jù)包。我習(xí)慣按會(huì)話(huà)建目錄每次錄制生成一個(gè)時(shí)間戳命名的文件夾session_20250101_153000/ video.mp4 imu.csv frames.csv camera_params.json sensor_info.json每個(gè)文件的職責(zé)要明確。video.mp4是 H.264 編碼的視頻流imu.csv保存加速度計(jì)和陀螺儀的逐條數(shù)據(jù)frames.csv是每一幀視頻的捕獲時(shí)間戳camera_params.json放相機(jī)內(nèi)參和畸變參數(shù)sensor_info.json記錄設(shè)備能力檢測(cè)結(jié)果和錄制時(shí)實(shí)際生效的 OIS/DVS 狀態(tài)。這套組織結(jié)構(gòu)的好處是后續(xù)跑標(biāo)定或數(shù)據(jù)集轉(zhuǎn)換時(shí)所有信息都在一個(gè)目錄里不用翻聊天記錄找參數(shù)。camera_params.json的內(nèi)容通常長(zhǎng)這樣{ camera_id: 0, resolution: [1280, 720], fps: 30, camera_matrix: [[fx, 0, cx], [0, fy, cy], [0, 0, 1]], dist_coeffs: [k1, k2, p1, p2, k3], ois_mode: OFF, dvs_mode: OFF }注意ois_mode和dvs_mode記錄的是錄制過(guò)程中實(shí)際生效的模式不是設(shè)備支持列表。這兩個(gè)字段是后處理程序判斷數(shù)據(jù)可信度的依據(jù)如果發(fā)現(xiàn)某一段視頻的ois_mode變成了ON那這段的幾何約束必須打上標(biāo)記。這里也回應(yīng)了標(biāo)題里的那句“如果設(shè)備支持則可以提供 OIS 數(shù)據(jù)”——設(shè)備支持 OIS 時(shí)你至少能把這種“每幀是否被防抖污染”的狀態(tài)信息給到下游。4. 從視頻到 SLAM 數(shù)據(jù)集幀時(shí)間戳與相機(jī)標(biāo)定的補(bǔ)齊方法錄完原始視頻到真正能喂給 VINS-Mono 或 ORB-SLAM3中間還差兩步補(bǔ)逐幀時(shí)間戳、標(biāo)定相機(jī)內(nèi)參。這一步也是視頻采集工具和普通錄像 App 拉開(kāi)差距的地方。MediaRecorder 寫(xiě)出來(lái)的 MP4 文件本身不含你想要的“每一幀的真實(shí)曝光時(shí)間”相機(jī)標(biāo)定也不能只靠 JSON 里那幾個(gè)占位符得實(shí)際算出來(lái)。4.1 MediaRecorder 不給你逐幀時(shí)間戳從 CaptureResult 里撈MediaRecorder 封裝得太徹底應(yīng)用層拿不到“這一幀是什么時(shí)候曝光的”這種信息。常見(jiàn)做法是在錄制的同時(shí)通過(guò) Camera2 的CaptureCallback把每一幀的時(shí)間戳撈出來(lái)單獨(dú)寫(xiě)一個(gè)frames.csv。代碼核心是重寫(xiě)onCaptureCompletedprivate val captureCallback object : CameraCaptureSession.CaptureCallback() { override fun onCaptureCompleted( session: CameraCaptureSession, request: CaptureRequest, result: TotalCaptureResult ) { val sensorTimestampNs result.get( CaptureResult.SENSOR_TIMESTAMP ) ?: return // 同時(shí)記錄單調(diào)時(shí)鐘用于把 sensor 時(shí)間戳統(tǒng)一到同一時(shí)基 val wallClockNs SystemClock.elapsedRealtimeNanos() framesWriter.writeLine($sensorTimestampNs,$wallClockNs) } }這里有兩個(gè)時(shí)間戳它們不是一回事。CaptureResult.SENSOR_TIMESTAMP是傳感器曝光開(kāi)始時(shí)刻來(lái)自相機(jī) HAL 的時(shí)間基準(zhǔn)SystemClock.elapsedRealtimeNanos()是應(yīng)用層收到回調(diào)的時(shí)刻。后者的作用是提供一條“換算橋”離線(xiàn)處理時(shí)用兩種時(shí)間戳的對(duì)應(yīng)關(guān)系擬合出偏移量再統(tǒng)一到單調(diào)時(shí)鐘。不要指望SENSOR_TIMESTAMP直接能用它和 IMU 數(shù)據(jù)的時(shí)基在不同設(shè)備上有不同表現(xiàn)。落盤(pán)之后校驗(yàn)幀率是否穩(wěn)定再談對(duì)齊。frames.csv行數(shù)應(yīng)該接近“錄制秒數(shù) × 幀率”時(shí)間戳差值的中位數(shù)應(yīng)該等于幀間隔。如果發(fā)現(xiàn)大量時(shí)間戳差值超過(guò)兩倍幀間隔說(shuō)明錄制過(guò)程中存在掉幀最好重錄而不是指望算法去修復(fù)。掉幀對(duì)視覺(jué) SLAM 是嚴(yán)重的輸入質(zhì)量問(wèn)題輕則軌跡抖動(dòng)重則尺度漂移。4.2 棋盤(pán)格標(biāo)定腳本用 OpenCV 解出內(nèi)參與畸變時(shí)間戳對(duì)齊只是第一步還得知道相機(jī)內(nèi)參。VideoIMUCapture-Android 輸出的camera_params.json里的內(nèi)參矩陣和畸變系數(shù)一般是錄制一段棋盤(pán)格視頻后離線(xiàn)算出來(lái)的。先抽幀mkdir -p frames ffmpeg -i video.mp4 -vf fps8 frames/%04d.jpg抽幀頻率建議在 5-8 fps太密了相鄰幀的棋盤(pán)格角度幾乎一樣對(duì)求解沒(méi)有增量信息。完成后用下面的 OpenCV 腳本做標(biāo)定import cv2 import json import glob chessboard (9, 6) criteria (cv2.TERM_CRITERIA_EPS cv2.TERM_CRITERIA_MAX_ITER, 30, 0.001) pattern_pts np.zeros((np.prod(chessboard), 3), np.float32) pattern_pts[:, :2] np.indices(chessboard).T.reshape(-1, 2) obj_pts, img_pts [], [] frames sorted(glob.glob(frames/*.jpg)) for fname in frames: img cv2.imread(fname) gray cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) found, corners cv2.findChessboardCorners( gray, chessboard, None ) if found: obj_pts.append(pattern_pts) corners cv2.cornerSubPix( gray, corners, (11, 11), (-1, -1), criteria ) img_pts.append(corners) ret, K, dist, rvecs, tvecs cv2.calibrateCamera( obj_pts, img_pts, gray.shape[::-1], None, None ) print(json.dumps({ camera_matrix: K.tolist(), dist_coeffs: dist.tolist() }, indent2))腳本做的事情是遍歷所有抽出的幀用findChessboardCorners找棋盤(pán)格內(nèi)角點(diǎn)找到就用cornerSubPix做亞像素精化最后喂給calibrateCamera解出內(nèi)參矩陣 K 和畸變系數(shù)。這里我沒(méi)寫(xiě)全import numpy as np你跑腳本時(shí)補(bǔ)上即可。幾個(gè)參數(shù)需要按你的棋盤(pán)調(diào)chessboard (9, 6)是內(nèi)角點(diǎn)數(shù)不是棋盤(pán)的格子總數(shù)買(mǎi)棋盤(pán)時(shí)商家標(biāo)的是格數(shù)內(nèi)角點(diǎn)要各減 1。如果一幀都沒(méi)檢測(cè)到先檢查棋盤(pán)是不是反光材質(zhì)或者抽幀分辨率夠不夠。成功檢測(cè)的幀數(shù)至少要 20 張并且要覆蓋畫(huà)面的中心、邊緣和俯仰角度邊緣區(qū)域的角點(diǎn)對(duì)畸變系數(shù)收斂尤其重要。4.3 IMU 與相機(jī)的對(duì)齊檢查錄制自檢三要素相機(jī)內(nèi)參有了最后還要確認(rèn) IMU 和視頻之間是否真的能對(duì)上。SLAM 后端一般有一個(gè) imu-camera 外參標(biāo)定過(guò)程但外參標(biāo)定之前你得先保證兩路數(shù)據(jù)的對(duì)齊是可解的。我自己的習(xí)慣是錄制時(shí)安排三個(gè)固定動(dòng)作回放時(shí)快速判斷數(shù)據(jù)質(zhì)量而不是錄完就急著跑算法。這三個(gè)動(dòng)作分別是靜止 3 秒、繞豎直軸緩慢轉(zhuǎn)一圈、左右快速擺頭。用一個(gè)小腳本檢查import pandas as pd imu pd.read_csv(imu.csv) frames pd.read_csv(frames.csv, headerNone, names[sensor_ts, wall_ts]) static imu.iloc[:1000] # 開(kāi)始靜止段 print(gyro mean:, static[[gyro_x, gyro_y, gyro_z]].mean()) frame_dt_ns frames[sensor_ts].diff().median() print(median frame interval ms:, frame_dt_ns / 1_000_000) print(imu first ts:, imu[ts_ns].iloc[0]) print(frame first ts:, frames[sensor_ts].iloc[0])第一個(gè)輸出檢查陀螺儀零偏靜止時(shí)陀螺均值應(yīng)該在 0.02 rad/s 以?xún)?nèi)超出這個(gè)量級(jí)說(shuō)明設(shè)備自身零偏大或靜止段混入了手抖。第二個(gè)輸出檢查幀間隔720p 30fps 的視頻幀間隔中位數(shù)應(yīng)該是 33.33 ms波動(dòng)超過(guò) 20% 就要懷疑掉幀。第三個(gè)輸出只是粗略看兩路起始時(shí)間差差得太多會(huì)影響標(biāo)定收斂。這套自檢十分鐘內(nèi)能做完能篩掉大半錄制返工的情況。5. 數(shù)據(jù)不對(duì)齊先排查這 5 個(gè)采集坑采集工具用起來(lái)不難但數(shù)據(jù)問(wèn)題幾乎都出在不起眼的地方。下面五條是我在不同設(shè)備上踩過(guò)的坑每條都按“現(xiàn)象、原因、解決”整理你錄制前對(duì)照著檢查一遍能省下好幾輪無(wú)效實(shí)驗(yàn)。5.1 畫(huà)面越穩(wěn)軌跡越飛OIS 未關(guān)閉現(xiàn)象錄出來(lái)的視頻在手機(jī)上看非常穩(wěn)定但放進(jìn) ORB-SLAM3 跑軌跡在 10 秒內(nèi)就偏到畫(huà)面外。原因手機(jī)相機(jī)默認(rèn)開(kāi)啟了 OIS鏡頭在每一幀都在做微小平移等價(jià)于內(nèi)參矩陣不斷變化而 SLAM 后端完全不知道這種變化只能把誤差算進(jìn)位姿。解決創(chuàng)建CaptureRequest時(shí)顯式設(shè)置LENS_OPTICAL_STABILIZATION_MODE_OFF同時(shí)把CONTROL_VIDEO_STABILIZATION_MODE_OFF也設(shè)上。不要只關(guān)一個(gè)個(gè)別廠商的驅(qū)動(dòng)會(huì)“好心”地把另一個(gè)模式也改掉。錄制開(kāi)始前再?gòu)腃aptureResult里讀一次兩個(gè)模式值確認(rèn)不是設(shè)置后未生效。5.2 IMU 條數(shù)與幀數(shù)對(duì)不上時(shí)鐘域混用現(xiàn)象IMU 數(shù)據(jù)看起來(lái)是連續(xù)采的視頻也正常錄完但拿時(shí)間戳比較時(shí)發(fā)現(xiàn)兩端的時(shí)間基準(zhǔn)是錯(cuò)開(kāi)的整條數(shù)據(jù)對(duì)不齊。原因IMU 的event.timestamp與 Camera2 的SENSOR_TIMESTAMP不一定同一時(shí)基直接把兩個(gè)值做差會(huì)得到無(wú)意義的結(jié)果。解決所有落盤(pán)時(shí)間戳統(tǒng)一用SystemClock.elapsedRealtimeNanos()傳感器原始時(shí)間戳另存?zhèn)溆?。如果已?jīng)錄錯(cuò)了可以在離線(xiàn)階段用兩路時(shí)間戳做線(xiàn)性擬合求出偏移但遇到驅(qū)動(dòng)時(shí)鐘跳變的設(shè)備就得重錄。5.3 畫(huà)面偏色或過(guò)曝自動(dòng)白平衡和自動(dòng)曝光在后臺(tái)改參數(shù)現(xiàn)象錄制前期畫(huà)面正常中段開(kāi)始偏綠或過(guò)曝而且色彩突變的時(shí)間點(diǎn)與手機(jī)轉(zhuǎn)動(dòng)的時(shí)刻重合。原因沒(méi)有鎖 AWB 和 AE相機(jī)的自動(dòng)算法根據(jù)場(chǎng)景動(dòng)態(tài)調(diào)整了增益和白平衡導(dǎo)致相鄰幀之間的色彩和亮度響應(yīng)不一致。解決在CaptureRequest.Builder里把CONTROL_AE_MODE設(shè)為CONTROL_AE_MODE_OFFCONTROL_AWB_MODE設(shè)為CONTROL_AWB_MODE_OFF然后手動(dòng)固定SENSOR_EXPOSURE_TIME和SENSOR_SENSITIVITY。注意鎖參數(shù)要在采集前做不要在錄制中途改否則會(huì)出現(xiàn)一幀跳變。5.4 陀螺儀數(shù)據(jù)全為 0傳感器監(jiān)聽(tīng)被系統(tǒng)靜默回收現(xiàn)象錄制結(jié)束時(shí)看imu.csv前幾分鐘有數(shù)據(jù)后面全是一串 0 或沒(méi)有新行。原因部分手機(jī)上傳感器監(jiān)聽(tīng)器沒(méi)有持有喚醒鎖系統(tǒng)在喚醒與休眠切換的邊界直接把監(jiān)聽(tīng)掛起或者進(jìn)程被低內(nèi)存回收Listener 成了空殼。解決錄制期間拿PARTIAL_WAKE_LOCK保持 CPU 喚醒并且在 Service 而不是 Activity 里持有傳感器監(jiān)聽(tīng)。錄制停止時(shí)再釋放鎖不要用應(yīng)用進(jìn)入后臺(tái)就被清理的組件持有 IMU 數(shù)據(jù)鏈路。5.5 MediaRecorder 掉幀碼率設(shè)太高與 IO 阻塞現(xiàn)象視頻文件的幀時(shí)間戳間隔分布不均勻中間出現(xiàn)明顯斷層但界面預(yù)覽看不出問(wèn)題。原因MediaRecorder 的編碼器跟不上寫(xiě)入速度或者手機(jī)存儲(chǔ)寫(xiě)入遇到瓶頸內(nèi)部緩沖區(qū)溢出后直接丟幀。解決先把碼率降到 12-20 Mbps分辨率控制在 720p。另外確保輸出目錄在設(shè)備內(nèi)置存儲(chǔ)而不是慢速 SD 卡錄制過(guò)程中不要同時(shí)做大量文件拷貝。如果懷疑編碼器問(wèn)題換一臺(tái)芯片更新的設(shè)備對(duì)比測(cè)試同一場(chǎng)景能快速定位卡點(diǎn)。6. 進(jìn)階一次三分鐘自檢讓 SLAM 軌跡不再飛錄制的最后一環(huán)是把這套采集鏈路變成你實(shí)驗(yàn)流程里的標(biāo)準(zhǔn)動(dòng)作。我現(xiàn)在每次正式采集前都會(huì)做一個(gè)三分鐘的自檢流程跑完再去碰算法事半功倍。自檢流程分三段錄制第 1 段手機(jī)平放在桌面上靜止 3 秒第 2 段手持手機(jī)對(duì)著紋理豐富的墻面緩慢平移加轉(zhuǎn)動(dòng)第 3 段快速左右甩動(dòng)手機(jī) 10 次。錄完立刻檢查三組指標(biāo)檢查段檢查指標(biāo)正常范圍靜止段陀螺儀均值各軸小于 0.02 rad/s平移段幀時(shí)間戳中位數(shù)30fps 對(duì)應(yīng) 33.3 ms波動(dòng)在 10% 內(nèi)甩動(dòng)段幀時(shí)間戳連續(xù)性無(wú)超過(guò)兩倍幀間隔的斷層這三組指標(biāo)分別對(duì)應(yīng) IMU 零偏、錄制幀率穩(wěn)定性、以及快速運(yùn)動(dòng)下編碼器是否丟幀。零偏大說(shuō)明設(shè)備本身質(zhì)量不行數(shù)據(jù)錄出來(lái)也會(huì)帶著系統(tǒng)性誤差幀間隔不穩(wěn)說(shuō)明編碼器或存儲(chǔ)跟不上甩動(dòng)段斷層說(shuō)明在高速場(chǎng)景下采集鏈路存在瓶頸。任何一項(xiàng)不過(guò)關(guān)都不建議直接進(jìn)入算法實(shí)驗(yàn)。除了數(shù)據(jù)自檢還有一個(gè)技巧很實(shí)用在正式場(chǎng)景錄制前先對(duì)著一個(gè)打印的棋盤(pán)格錄 20 秒。這段視頻不參與 SLAM 實(shí)驗(yàn)只用來(lái)反復(fù)確認(rèn)內(nèi)參標(biāo)定的穩(wěn)定性。如果兩次標(biāo)定的焦距偏差超過(guò) 0.5%說(shuō)明相機(jī)設(shè)備狀態(tài)有變化比如鏡頭模塊松動(dòng)或溫漂這時(shí)候要排查設(shè)備而不是改算法參數(shù)。我在此前項(xiàng)目里就吃過(guò)標(biāo)定漂移的虧后來(lái)把這一步固定成采集前置動(dòng)作再?zèng)]出現(xiàn)過(guò)“算法調(diào)了三天最后發(fā)現(xiàn)是標(biāo)定不對(duì)”的情況。這條鏈路走順之后VideoIMUCapture-Android 的意義才會(huì)真正體現(xiàn)出來(lái)它不只是一個(gè)錄像工具而是一套把視頻、IMU、相機(jī)參數(shù)和 OIS 狀態(tài)對(duì)齊的數(shù)據(jù)采集方案。愿你少踩幾個(gè)采集坑錄出來(lái)的數(shù)據(jù)一次就能跑通。希望幫到你。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
九九九久千久久激情蜜桃在线看 | 偷拍 亚洲 欧美| 色情综合| 久久久久亚洲av综合波多野制衣| 美女9118禁| 熟女AV一区| 丁香六月啪| 国产黄片精品在线| 97爱综合| 极品一区二区三区免费| 一牛一区二区三区久久| 日本成a人v网站在线观看| 百度百度日本操逼| 久久99干一本高清| 亚洲综合小视频小说在线观看 | 青青青草原| 色女99一级片在线观看| 亚洲最大黄网| 狠狠躁AV| 精品免费1| 333kkkk·亚洲com久久| 秋霞一集毛片观看| 国产精品精品系列在线观看| 中文字幕一二三| 色丁香五月婷婷| 91麻豆天美国产欧美高潮| 国产av强奸美女| 日日夜夜精品视频| 狠狠爱夜夜| 国产欧美美女免费观看视频| 精品网站9999| 亚洲一本色码中文字幕| 91国产大片| 天天弄天天操| 亚洲97成人在线观看| 91色狼| 欧美精品亚洲精品日韩传电影| 免费久久9999| 丁香婷婷色五月| 俺去俺来也在线www| 把腿张开老子CAO烂你| 操b在线观看| 乱伦强奸区日韩| 亚洲性刺激| 天天看高清麻豆| 免费成人在线熟妇网| 97激情97激情| 欧美 牲| 九九九九九九九九九五码| 日韩专区数据列表-第3230页-精品国产一区二区三区香蕉 久久99熟女人妻中文字 | 日韩一级二级三级免费看完整版国语版 | 人人操人人大香蕉| 色色综合网站| 狠狠综合网| 91精品久久综合熟女| 亚洲九九夜夜| 后入内射蜜桃臀| 在线综合 亚洲 欧美中文字幕 | 国产 日韩 欧美 中文 另类,国产 欧美 另类 制服 变态,高清 日韩 欧美 中文,高 | 久久久99久9| 校园春色制服丝袜中文字亚洲| 一区二区首页| 色大香蕉97N| 天天大干大香蕉| 亚洲另类色综合网站| 日本久久网| 丁香九月激情| 96久久科窝| 99re在线观看| 岛国天天午夜影院传媒网| 久久大香蕉97| 99e久久国产精品| 日本色色视频网站| 五月丁香狠狠爱| 一区=区三区视频| 久久超碰98| 免费的av网| 狠狠狠一区二区三区| 日韩少妇在线视频| 久操电影网| 日本韩国国产精品一区| 操逼日韩无码| 国产黄色动态精品| 婷婷探花久久精品一区| 国产精品一区av在线| 看大黄色大片原件| 五月天精品| 欧美日韩大陆黑人少妇99| 蜜臀一二三区| 女性喷水高潮在线观看| 欧美综合娱乐久久| 中文字幕少妇色| 亚洲凸凹超碰成人| 精品人妻一区二区三区四区不卡在| 国产精品一区av在线| 五月丁香久久| 久久久久久九九九九九九| 伊人网免费视频| 5278欧美一区二区三区| 啊嗯好大视频在线观看| 91处女视频在线观看| 青青草福利视频| 国产精品宅男免费| 欧色性第一页| 啪啪免费| 91精品人妻啪啪间| 男人天堂黄片| 久久久av爱| 亚洲国产97在线精品一区| 亚洲囯产精品女人久久久| 天堂av2019| 国产后入清纯| 一级毛片久久久久久久女人18| 日韩精品一区的| a人片中文字幕一区二区| 97在线免费观看视频| 偷拍自拍在线视频观看| 少妇丝袜在线观看AV| 韩日色费| 伊人国产视频| 中国一级操逼视频| 啊好爽快点-国产一区二区三区撒尿在线-成人AV| 99少妇| 日欧操屄| 蜜桃一区二区三区| 亚洲黄色a级片| 欧美78| 久久精品日韩| 精品制服美女中文一区二区三区| 国产一区二区三三视频| 久久人妻一区二区三区高清| 亚洲欧美激情在线视频| 精品二区三四区五电影 | 久久精品无码专区| 色色五月天婷婷| 欧美综合第一页| 国产剧情AV不卡在线观看| 欧美男人亚洲天堂| 九九AV| 亚洲在线a| 日韩人体偷拍| 人妻天堂三区| 高清不卡 中文 人妻| 欧美日韩精品一区二区三区高清| 欧美性高潮| 97精品一二区| 国产亚洲精品久久久久小| 久久色一区| 亚洲密乳AV| 欧美91网站| 日本国产欧美高清在线| 女生91网站| 岛国小电影| 免费看片黄| 国产乱弄免费在线视频。| 啪啪免费| 国产精品久久久久久久久久久久| 富二代亚洲精品99| 在线一道啪| 亚春色色| 蜜桃不卡一区二区| 青娱乐久久艹| 久久精品黄色| 99精品无码| 啊啊啊啊啊啊在线看| 欧美激情久操网| 亚洲色图综合网| 五月丁香色色网| 亚洲色图欧美色图另类图片| 试看福利| 日韩女优在线| 精品人妻一区二区蜜桃视频| 国产精品网站免费 | 亚洲色图美腿丝袜| 国语精品内射在线观看| 日本国产成人亚洲精品无码| 久久首页| 色99999| 四虎av在线| 色诱avtt| 韩国免费播放一级毛片| 综合熟妇一区二区三区| 狠狠热这里都是精品| 色婷婷色99国产综合精品| 亚洲另类天堂| 大香蕉草草| 亚洲午夜蜜臀| 欧美精品偷拍| 欧洲无码一区二区| 五月丁香| 熟女色综合久久| 中文字幕一区二区视频在线观看 | 亚洲天天更新| 欲色啪| 国产超碰在线一区| 欧美在线观看综合国产| 乱伦Av网| 亚洲精品无码成人久久久99| 色欧洲| 超碰超碰超碰超碰的大鸡吧操黑丝袜| 97精品视频网站| 亚洲 se图 欧美电影| 日韩黄色一区二区三区| 中文操嬖片。| 人人色人人操在线| 免费久久9999| AV丝袜东京热| 天天天天天天天天综合| 青青草自拍视频在线播放| 日韩无码黄色片| 欧美aaaaaaa| 人人弄人人摸| 欧美亚洲国产91在线| 超碰97人人cao| 试看60秒 爽| 中国91AV| 亚洲一区二区在线观看91| 成人区人妻精品一| 国产2.3.4区| 国产超碰欧美| 伊人96在线| 欧洲一区二区三区免费| 一二三四视频在线社区中文字幕| 色97欧美| 日韩成人性日韩成人性爱视频在线免费观看| 天天综合中文字幕 91| 国产免费永久精品无码| 亚洲一区二区三区欧美日韩| 大香蕉碰| 69精品在线| 免費人妻夜夜爽天天爽爽一区| 开心五月天激情网| 亚洲日本韩国极品一区二区| 久久久久久亚洲精品中文字幕人妻| 无码乱人伦中文视频| 爽 好舒服 无码刺激久久| 亚洲aV性爱| 国产女生在线| 超碰97精品在线| 江都AV在线| 亚洲成人一二三区| 干妹子| 97亚洲自在精品在线观看| 亚洲欧洲综合| 国产在线综合网| 成年人黄色小视频网站| 99热9| 欧美色图片91| 亚洲美腿丝袜香蕉影视欧美成人| 国产91 丝袜在线播放| 69国产对白刺激| 国产主播福利| 欧美性爱三区二区| 青青草啪啪网| 超碰99re| 久久久久久精品免费看A级| 五月婷视频| 亚洲一二三精品久久网 | 日韩无码第3页| 另类图片天天影视| 另类 日韩 熟女| www久久99| 欧美A√综合网 | 18禁精品网站在线看| 狠狠爱综合网| 插入粉嫩少妇视频| 91无码西班牙视频在线| 国产一区二区啪啪视频| 精品美女在线视频| 婷婷爽人人婷婷爽视频| 国产精品免费视频人成| 欧美一区二区传媒| 精久久久| 成全在线观看免费观看| 大香蕉欧美伊| 黑人综合网| 国产 亚洲 丝袜 制服| 激情久久久| 小草av不卡亚洲二区| 欧美性夜| 九九碰九九爱97| 久久綜合很很很| 极品一区二区三区免费| 欧美性爱18观看| 色噜噜狠狠色综无码久久合欧美| 91爱欧美| 中文字幕丝袜| 国产欧美日韩精品中文| 欧美第一页| 啪啪啪精品| 内射白嫩美女| 久久香蕉国产线看观看亚洲女人 | 久久久久久久97| 乱伦av麻豆| 午夜性| 超清中文乱码字幕| 大香蕉伊人色偷偷在线| 久操免费观看| 五月天激情网站| 欲香欲色综合天天伊人| 中文字幕av乱伦| 1024手机看片欧美日韩| 欧美精品23| 中文字幕视频在线观看一区二区| 91天天综合日韩欧美| 欧美午夜视频精品久久| 欧美 传媒 麻豆 日韩 偷拍| 久久久九九九九| 国产亚洲日本精品在线| 国产精品黑人一区二区三区| 国产一区二区在线电影| 日本五区不卡| 家庭乱伦网站国产| 美女网站黄页| HEYZO高无码国产精品227| 熟女精品一区二区在线观看| 久久久久亚洲?V片无码V| A啊啊在线观看| 亚洲av综合伊人久久| jazzjazz国产精品麻豆| 精品精品精品| 欧美成人午夜免费福利785| 九九九综合精品| 国产成人欧美一区二区三区的国产| 九久久九精品视频| 久久久久久久97| 97人肏| 国产精品丝袜久久亚洲不卡| 欧美性爱在线无码| 91情色| 91精品人| A片三级无码| 亚洲在钱| 中文字幕在线观看网页| 天天综合网日韩7799| 91黑丝操| 欧美精品久久久久久久丰满| 国产乱码久久久久久| 你懂得91| 97天天日| 综合97久久| 国模限制级电影| 久操视频在线观看| 超碰在线1234区| 夜夜嗨AV一区天天| a片久久久久久久久久久久| 国产视频第2页| 一级性爱aaaa| 亚洲无码超碰免费| 欧美 亚洲| 美女大乳久久久久久久女人18| 操逼片国产| 91老司机视频| 丰满人妻一区| 炮色五月| 成人欧美一区二区三区黑人一| 久久成年片色大黄全免费网站| 欧洲亚洲人人爽爽视频| 热久久国产精品视频大陆精品| 亚洲色图殴美色图激情乱伦| 人妻精品视频一区二区三区 | 97超碰亚洲| 三级三久久线久久99久目本WW| 豆花视频操逼网址| 日日爱99| 欧美激情亚洲| 91在线观看,天天综合| 亚洲另类色图片| 强奸xx国产| 国产成人午夜视频网址| 国产高清成人免费视频| 人人摸人人舔一区二区| 成人天天看站长推荐| 九月婷婷综合| 亚洲超碰在线| 日本女人操逼| 国产亚洲色婷婷久久99精品91葵花宝典| 久久久一区二区三区四区五区| 豆1无夜无码| 99天天超碰| 色综合五月天| 日韩免费性爱视频在线观看| 中文字幕一区电影在线观看| 国产精品久久久久久久无码AV| 久久精品一区一起草| 天天日少妇逼AV| 国产精品免费视频人成| 国产精品久久久久久 百度| 操B视频日韩无码| 97啪啪| 人人妻人人澡人人爽久久av| 色97干| 大香蕉性欧美| 91另类| 欧美日韩久久精品爱爱| 91久久婷婷| 91n处女在线观看| 超碰这里有精品| 任你干在线视频| 永久免费发布性爱网| 一区二区三区免费视频入口| 国产精品探花色| 国模无码人体一区二区三| 97无码视频在线播放| 国产精品国产精品国产| 人人搞人人插人人操| 97这里有精品| 久操精品| A一区片| 日韩欧美aⅴ综合网站发布| 免费人成在线观看网站品爱网| 福利视频香蕉免费一区二区在线| 婷婷干黄色| 无码精品啪啪啪一区二区三区三州| 淫荡网址| 强奸乱伦AV一天堂网| 亚洲黄色视频在线观看视频| 成人小说视频在线精品欧美| 99无码狠狠久久| 日本高清一本二本免费不卡| 再深点灬舒服灬太大了好硬好爽| 一级做受视频免费是看美女| 最新日产中文在线麻豆| 五月丁香啪啪网| www.婷婷| Aa东京男人的天堂| 91精品婷婷国产综合久久竹菊| 亚洲一区亚洲天堂| 日韩精品区二区三区不卡| 中文字幕91页| 久久黄黄| 日韩综合97P| 亚洲熟女乱综合一区二区在线-...亚洲国产日韩欧美一区二区三区,久久久久久精 | 色九月综合| 天天操夜夜操| 嗯……啊…嗯嗯…啊…好舒服| 91女神在线视频| 国产 日韩,欧美 自拍| 日本性感人妻91| 91精品国产日韩欧美综合| 99久久久久久亚洲精品不卡| 日本新免费二区三区| 亚洲春色一区二区三区| 熟女人妇一区二区三区| 91neishe| 久热久操| 日本韩高清无砖码22o| AAAAAAAAA黄片| 中文字幕第页| 九九九九九精品十六| 大香蕉在线86| 久久久精品国产亚洲伊人| 粘花网06av视频| 欧美精品不卡一二三四在线91| 国产白丝av| 亚欧性爱ab| 日韩影片中文字幕一区二区三区| 另类专区加勒比| 国产强奸乱伦无码视频| 99色天堂| 少妇精品| 久久九色| 久久精品黄色| 九九精品99| 六月丁香啪啪| 长久操视频| 91AV入口| 婷婷视频网| 夜夜嗨一区二区三区直播内容| 天天看夜夜看日日干| 婷婷深爱五月| 欧美综合97www| 后入精品| 女人被添高潮免费视频| 国产传媒日本欧美专区| 精…码一二三区| 五月色网| 小电影欧美91| 激情五月天社区| 欧日韩在线观看| 久久久精品中文字幕爱豆| 青青青青草av在线观看| 精精品人妻一区二区三区| 亚洲暴力强奸AV| 亚洲综合图片在线| 久久欲| 日韩二级| 五月丁香六月综合缴清无码| 好吊色一区| av网站国产主播在线| 欧美人妻精品| 国产精品视屏| 热久久精品| 国产真实子伦对白| 国产又大又粗又长视频在线| 青娱乐老司机视频| 美腿色图| 久久黄片国产一区二区| 欧美91在线+|+欧美| 国产亚洲深夜激情| 色www精品视频在线观看| 日韩性爱1级片视频| 久久久涩| 国产成人精品亚洲日本| 中文字幕精品乱码| 久久久久99999| 九九热国产| 婷婷五月天无码| 91c色| 色悠久久久av| 国产激情在线观看| 97超碰9| 亚洲av夫妻操穴网| 天堂v无码免费视频| 不卡超碰护士AV在线免费播放| 亚洲激情综合另类男同| 丝袜大香蕉| 中文字幕在线观看AV| 一二视频神马久久传媒| 欧美乱欲| 伊人精品国产| 91久久国产综合精品| 国产av高清版| 久久九九综合| 精品国产99| 丰满人妻一区二区三区四区| 免费视频在线观看啊啊啊啊啊| 国产精品日韩在线一区| 无卡一区=区| 粉嫩国产精品久久粉嫩| 亚洲成人性| 九久9精品| 18岁禁 茉莉成人久久| 伊人影院综合是一个与深夜成人在线| 999精品女人| 色av中文字| 国产成人www免费人成看片| 青青草国产欧美非洲黑人| 国产精品亚洲日韩骚欢乐谷最新地址发布页huanieguty性屋娱乐妖精视频 | 欧洲亚洲人妻无码中字久久三区四区 | 日本日日色视频| 999国产精品999| 色综合1991| 国产福利夜| 99操视频| 嗯啊不要在线| 女人被男人桶爽视频网站| 东京太热男人的天堂久久久| 神马久久69| 欧美v日韩欧亚洲电影天堂色诱,国产传媒| 精品黑人一区二区| 一区二区三区亚洲| 日韩无码极品| 人人九九精| 久久亚洲人妻| 久久麻豆一区二区| 看日韩美女二区三区免费操逼视频 | 无套后入双马尾| 日本好吊色视频| 91久久久久久久| 成人婷婷丁香| 国产精品网站免费| 欧美亚洲第1页| 天天情欲宗合网| 久久久久久久亚洲Av无码| 夜草网站| 91av熟女人妻| 变态另类专区| 亚洲狠狠入| 天天操狠狠日夜夜干超大胆开放com大香蕉视频在线观看 | 亚洲欧洲成人在线电影| 欧美第二页| 久久久久免费少妇| 超碰免费人人| 99色色网| 人妻AV 中文字幕的| 色综合色色| 91麻豆va国产精品| 五月婷婷基地| 色色国产| 亚洲黄色影视| 中文字幕在线24| 久操大香蕉手机视频在线看| www.99热| 另类综合另类| 无码视频一区二区| 超碰无码五月97| 台湾佬中文娱乐网久久久久久久久久com | 曰韩香蕉97| 道久久五香丁月婷婷激情综合| 中文字幕、久久精品国产2020、久久综合久久自在自线精品自、亚洲 | 加勒比av中文| 日本国产二线女色| 噜噜噜亚洲精| 色妇综合网| 中文字幕第9页萱萱影音先锋 | 久久婷婷五月| 91爱综合| 国产精品丝袜久久亚洲不卡| 美女网站黄页| 九九九九一级| 熟妇女伦乱视频| 91免费看一区二区三区 | 97超视频在线观看| 精品一区二区2| 国产乱子伦一区二区三区在线观看| 91在线免费精品视频| 影音先锋每日最新资源在线观看 | 动漫片子网站3黄| 2026国产精品视频| 97超碰大| www.伪伪| 伊人91| 插插综合网天天影视网| 男人天堂新| 日韩有码 一区二区三区| 国产久久久久久| 91精品久久久久五月天精品| 国模精品娜娜一二三区| 麻豆黄四叶草网站| 好爽要喷了| 欧美日韩大香蕉| 无码乱人伦中文视频| 精品一区二区三区蜜桃臀赵总 | 日韩欧美视频青青| 久久久久9999妇女| 色哟哟av| 免费的黄片有限公司| 最近的最新的中文字幕视频| 亚洲人在线| 亚洲欧美97√| 美女午夜福利免费视频| 97视频在线观看播放与子乱对白在线……| 大香网伊人久久综合网eew| 九九九九九精品视频| 免费亚洲黄色视频在线观看| 深爱激情五月天| 91无摭挡| 97日韩欧美| 国产激情在线观看| 亚洲有码第一页| 免费岛国一级片| 综合久| 激情人妻另类| 九九视频黄色片| 日韩啪啪网| 天天色怡春院| 无码人妻精品一区二区三区99不卡| 荡小穴在线观看| 中文操嬖片。| 超碰九7免费| 国产91美女视频| 日本在线999| 樱花蜜乳av| 国模无码人体一区二区三| 日B操| 中文字幕91综合| 亚洲精品91| 激情AV| 欧美日韩中文字幕不卡| 亚洲最大AV网| 97jingpin| 国产高清免费不卡av| 伊人伊人LD| 韩美日操逼| 夜夜高潮夜夜爽高清视频一| 一级片视频啪啪| 九一屌逼| 99视频这有这里有精品| 天天日日日射| 国产综合在线视频网站| 91五月天| 91社操逼| 国产精品一二三| 国产亚洲精品自在线亚洲情侣| 中日韩久久久免费看| 亚欧国产无码精品在线| 综合欧美色图| 日韩有码一区三区| 2024年最新色情网站在线观看| 亚洲综合另类欧美久久久| 另类图片欧美激情综合| 夜色五月天| 中文字幕99999| 涩爱AV在线| AV污污污污| 九久久九九久视频| 神马视频久久久久久| 欧美成熟性爱精品| 五月婷婷青青草娱乐伊人| 深田咏美亚洲精品福利社| 天天天肏屄肏屄肏屄欧美欧美| 中文字幕一二区二三区人妻专区| 学生妹天天看| 日韩人妻资源在线看| 欧美亚洲自拍另类人妻| 91 丝袜在线| 婷婷av在线中文字幕| 啊啊啊啊啊啊啊在线| 久久久精品电影| 婷婷色香| 大逼色网站| 丁香五月天啪啪| 9久热| 操B久久| 亚洲天堂无码| 日韩欧美性爱电影在线观看| 二三四区精品| 天天干天天拍| 国产亚洲精品激情| 97超碰大| 亚洲和欧美裸体美女双飞视频| 欧美精品自慰系列寂寞少妇| 激情文学88| 嗯嗯啊啊操死我| 久久精品国产亚洲AV高级北京| 四虎在线观看网站| 久久手机视直播| 日韩簧片免费看| 男同专区一区二区三区在线| 亚洲成人妻日韩在线| 99久热| 亚洲AV无线| 亚洲自拍偷拍视频在线| 97在线亚洲| 97 国产一区| 插入综合网| 久久久久国产一区二| 日日夜夜免费| 国产一区二区在线播放,久久亚洲精品中文字幕第一区,亚洲精品在线中文字幕视频 | 久草久热| 伊人久久艹| 黄片com.| 艹精品| 免费精品国偷自产在线在线| 久久丝袜| 亚洲 欧美 日本 国内 首页| 狠狠躁天天躁日日躁97| 91成人国产综合久久精品蜜月| 99热免费| 欧插网站| 女优视频第10页| 婷婷六月色| 国产欧美一区激情交| 乱性AV| 日韩操逼性鲍| 超碰午夜在线| 大香蕉综合| 亚洲AV无码久久久国产精品| 思思热久久成人| 欧美1区二区三区公司| 亚洲麻豆av一区二区| 日韩人妻丝袜中文字幕| 欧美在线天堂| 亚欧美无遮挡| 蜜臀99久久精品久久久久久| 九九九九97| 欧美综合 站| 久久久久久久久国产| 中文字幕诱惑制服人妻丝袜美丝袜美| 狂操嫩妻视频一区二区三区| 天天干,天天日| 色色99| 久九九九九九九热| 日夜干射色啊| 99热线麻豆 | 大香蕉乱级| 国产刺激视频| 在线看免费无码AV天堂的| 欧美老妇综合网| 男人午夜天堂| 超碰97资源中文字幕| 在线a亚洲视频播放在线| 久久一二三四不卡| 欧美日韩精品青青| 91骚熟女| 少妇人妻好深太紧了vr91| 久久精品店| 一品道视频一区二区三区| 嗯阿好爽好紧| 高清不卡 中文 人妻| 亚洲中文字幕精品一区| 欧美综合色图网| 人妻精品一区二区| 成人无码在线超碰网| 中文自拍欧美影视| 九九天堂| 国产AV线| 美日韩男女操屄视频| 国产一区二区在线电影| 中文字幕一区av| 色色色色色色色色综合| 综合亚洲欧美| 欧洲成人性爱视频| 美女啊啊啊啊pc| 日本黄页视频在线观看| 五月天亚洲色图| 中国大陆国产高清AⅤ毛片| 婷婷爱五月| 欧美色图 人妻| 久久精品店| 欧美劲爆视频一区二区| 中文字幕丝袜美腿| 99热最新| 美女AV一区二区| 国产无马在线| 五月综合色| 国产精品人妻免费精品| 国产特级毛片AAAAAA高潮流水 | 欧美熟妇精品黑人巨大91| 久久久久国产精品喷潮免费观看臀 | 久久宗合97| 天天躁日日躁成人字幕aⅴ| 无码粉嫩白虎一线天b区| 岛国黄片网站| 加勒比大香蕉视频在线| 美女丝袜激情小说| 亚洲天堂一区二区久久| 日韩AV片| 中国的操老妇女| 日韩视频中文字幕| 亚洲色综合| 97久久国产精品| 国产精品呦一区二区三区| 97亚洲资源| 人人操人人色网| 中文字幕五区| 色淫网站优优视频| 97人人超| 欧美综合中文| av资源在线观看少妇| 欧美中字不卡| 在线人人人人人人精品超| 丁香九月 婷婷| av婷婷色网| 麻豆三极片| 99999久久久久9国产精品| 久久久蜜桃臀无码视频| 成人情色一区二区| 揉揉日日日日| 国产九月婷婷| 91欧美综合| 亚洲美乱| 自拍偷拍第26| 亚洲一区二区 麻豆传媒| 天天干天天燥| 久草精品一区 | 欧美性爱www免费版| 亚洲欧洲第二视频在线观看色图| 岛国黄片网站| 另类视频在线| 欧美刺激色黄片免费看| 亚洲中文字幕av| 午夜免费视频1000| 97丝袜亚洲在线播放| 日韩一级二级三级| 中文字幕日韩人妻视频一区二区三区| 做爱福利视频一区二区| 无码逼| 91熟女少妇| 操碰97| 无码不卡八戒| 操淫穴亚洲五月丁香 | 久久午夜鲁丝片| 久久九精品| 人妻-91porn| 成人怡红院| 国产又大又粗又色生活片亚洲国产精品成人久久久综合免费 | 91五十路| 欧美日韩国产男人| 国产精品午夜高潮呻吟久久av| 国产9l 大屁股| 丝袜喷水在线| 日韩中文字幕在线视频观看| 中文字幕视频二区| 97视频7| 2024人人操人人摸| 韩国三级一线观看久| 国产情色第一第二页在线观看| 久久亚洲av成人无码国产| 九九热AV| 久久人人爽av亚洲精品天堂桃色| 日日操天天操| 国产精品视频自拍在线| 青青草原av| 天天日天天射天天干| 一级啊性爱在线视频| 亚洲欧美电影| 蜜桃臀AV在线| 蜜桃在线观看一区二区三区| 熟女人妻一区二区三区| 肏逼视频日本| 久夜操| 97爱b| 看看小穴| 色婷婷色99国产综合精品| 自拍偷拍第26| 三四中文字幕| 黄色十八禁| 人人操天天爽| 五月丁香啪| 91成人久久| 精品国产av一区二区三区四区入口| yazhouzaixian| 老汉网| 日韩99神马视频播放片在线播放| 午夜偷拍久久熟女| 亚洲婷婷综合网| 国产精品诱惑| 国产尤物在线三区| 亚洲色入欧美| 蜜臀人妻少妇久久在线观看| 婷婷五月天成人| 黑人精品成人一区二区三区 | 亚洲一区中文字幕一区| 国产强奸乱伦xd| 亚洲国产精品无码AV久久| 久热精品在线| 久久精品日韩专区免费观看| 先锋音影AV| AV天堂男人的天堂| 宅男91视频在线播放| 欧美日韩超碰在线| 日本片日本片祼观看网站在线看中文版网页在线看 | 99视频自拍| 日韩精品国产一区二区| 加勒比AV天堂| 欧美日韩精品国产91| 动漫片子网站3黄| 九九九网页| 黄色AAAAA欧美| 熟妇xxxxx性春色| 国产又猛又粗又爽又黄| 久久国产AⅤ| 9久精品| 中文字幕97| 日韩在线国产字幕| 97综合久久| 84YTCOM性无码| 男女啪啪啪18禁网站| 黄片www视频免费| 亚洲无码com| 日韩成人私密一级精品av| 秋霞色色影院| 国产婷婷综合在线观看| 人人性爱视频免费| 亚洲另类欧美精品| 日韩字幕一区| 日韩精品在线观看观看| 黄片视频,下载| 手机在线A片| 人妻精品一区二区在线| 色牛牛AV| 天天综合精品| 人妻久热在线| 粉嫩国产精品久久久| 97超碰色屌| 国产亚洲日本| 九九人妻| 97国产精品一区| www.av家庭乱伦| 五十路六十路素人熟女| 太久视频| 天美精品av| 九九久久99| 麻豆区久久久久亚| 黄色工厂这里只有精品| 亚洲一级黄色毛片| 一区二区影院| 五月激情在线| 91色综合激情| 综合熟女| 久久久精品无码亚免费| 久操精品网| 无码heyzo高清一区| 亚洲欧美日产国产91毛片| 十八禁电影伊人网| 青草一区二区| A级毛片在线看免费| 97欧美性爱| 国产少妇与亚洲av| 亚洲综合图片在线| 一区二区视频在看| 欧美日韩精品青青| 熟女欧美日韩综合婷婷| 亚洲宗合网| 91精品老女人| 9丨久久九九九| 日本三级中国三级99人妇网站| 亚州,欧美在线| 欧美黄页| 超碰97护士| 国产精品欧美日韩久久| 亚洲精品性爱片| 免费AV中文网在线观看| 国产精品自在线发布| 精品久久久久,69国产成人精| 好舒服视频| 凹凸精品熟女在线观看| 最新三级网址| 亚州操操穴网| 色欲天香天天综合网-成年人三级片网站-欧美乱妇狂野-日韩国产专区-久久久久久 | 国产自产一区视频在线| 熟妇在线视频一区二区| 69久久久久久久久久久久久| 和协影院中文字幕三区| 久久久555| 亚洲国产精品成人无码久久久 | 免费男人的天堂| 一级人妻性爱视频| 欧美黑人XXXⅩ高潮交| 九草九九九| 国产成人午夜视频网址| 99999久久久久9国产精品| 国产又粗又长的视频| 强奸乱伦大香蕉| www.一本大99| 色99999| 久久一二三四五六七八九区区区 | 天天影视综合色| 91日韩网站| 免费人成?大片在线播放| 四虎免费看黄| 91国产操逼视频| 青青操青娱乐| 欧日韩一二三f区| AV免费在线播放一区| 欧亚久久偷拍视频| 黄色视频高清无码网站| 色性综合| 日本亚洲嫩草影院啪啪| 日韩精品在线观看网站| 亚洲日韩久久精品一区| 大香蕉一区二区在线观看.| 欧美日韩资源在线| 国产99热| 男人天堂2019亚洲| 97色在线视频| 这里只有精品视频在线| 易易A毛视频| 欧美色图天堂在线| 好吊色综合| 91人人爽人人爽人人人,gav福利视频导航,日韩欧美亚洲国产字幕四区 | 91九久| 精品人妻一区二区三区四区石在线| 青娱乐 成人娱乐在线| 2020久久免费视频| 亚洲男人的天堂一区二区| 亚洲视频中文一区| 九九热超碰97亚洲最新香蕉 | 国产成人综合网| 亚洲情色 欧美| 婷婷五月天基地| 福利视频合集| 熟女中出视频| 福利社区午夜一区二区| 亚洲色悠悠久久88| 香蕉欧美| 久久爽爽精品| 国产aⅴ无码片毛片一级网站| 天美传媒av在线| 久久九九网| 久久久四区| 91最新综合| 青娱乐国产精品| 精久久久| 香蕉在线一区二区三区| 国产精品成人AV片免费看网站| 爱爱动态试试看6 0秒| 亚洲天堂AV在线播放| 亚洲精品97p| 殴美牲| 亚洲国产精品9999在线观看| 欧美极品色| 九月丁香| 色哟哟 日韩精品| 亚洲男人的天堂AV| 欧美日韩操逼嗦吊| 欧洲与亚洲欧美精品中文字幕| 久久毛卡| 久久久人妻| 美性中文综合网| 曰韩av中文字幕专区| 国产高清成人免费视频| 国产在线精品电影观看| 色婷婷久久| 7777奇米影视久久| AV女资源| 国产熟女| 天天操夜夜操| 国产99精品一区二区三区免费| 久久五月丁香| 看免费的黄片| 亚洲无码一区成人免费午夜| 黄总AV色图| 久久婷婷视频| 三级AV入口| 国产美女自拍视频| 丝袜翘臀后入欧美校园亚洲自拍另类小说一区中文字幕少妇诱惑 | 久热在线精品免费观看| 综合亚洲网| 九九热在线精品视频| 欧美久久九九| 国产麻豆一级精品视频| 丰满人妻一区二区三区性色| 精品美女少妇一区二区三区| 国产精品一区二区 尿失禁| 亚洲色图91| 成人日本片久久久蜜桃| 中美日韩毛片| 少妇高潮九九九九| 免费自拍三级综合| 亚洲色交| 风骚少妇视频中文字幕| 日本青青草在线| 九九伊人网| 亚洲一区二区三区四区视频| 亚洲综合成人网| 草草影院最新网址| 九九无码| 欧美亚洲手机在线| 国模91| 久操在97| av午夜玫瑰| 伊人久久亚洲中文字幕| 色婷婷亚洲婷婷| 丝袜美腿制服人妻二区中文字幕 | 国产51色综合久久免费| 欧美一级黄色免费专区| 91A欧美电影网站| 超碰精品97| 四虎影视 亚洲无码| 少妇内射www在线观看视频| 色女综合| 日本丝袜美腿人妻九九| 亚洲有薄码区日本系列中文字幕| 色吧综合网| 99视频自拍| 五月丁香婷婷综合| 亚洲第一在线视频| 黄片不用下载在线观看| 欧美精品久久久久久久久88| 久操网址| 粉嫩不卡一区二区性爱| 久久社区一区二区三区| 91人妻最真实刺激绿帽| 超碰精品日韩欧美国产| 婷婷伊人五月| 日韩成人高清一区二区| 亚洲中文字幕精品一区| 婷婷激情五月天小说网| 小日子操bb在线看| 无码精品久久| 九九精品无码专区免费| 性久久久| 强奸乱伦亚洲第一页| 五十路三级片| 立川理惠无码一区二区| 色爱国产| 啊啊啊操一区|