CN111566441A - 利用相机进行车辆环境建模 - Google Patents
利用相机进行车辆环境建模 Download PDFInfo
- Publication number
- CN111566441A CN111566441A CN201980004560.5A CN201980004560A CN111566441A CN 111566441 A CN111566441 A CN 111566441A CN 201980004560 A CN201980004560 A CN 201980004560A CN 111566441 A CN111566441 A CN 111566441A
- Authority
- CN
- China
- Prior art keywords
- image
- images
- ann
- subject matter
- road
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000013528 artificial neural network Methods 0.000 claims abstract description 210
- 230000033001 locomotion Effects 0.000 claims abstract description 192
- 238000000034 method Methods 0.000 claims abstract description 134
- 238000012549 training Methods 0.000 claims description 156
- 238000012545 processing Methods 0.000 claims description 76
- 238000013527 convolutional neural network Methods 0.000 claims description 30
- 230000011514 reflex Effects 0.000 claims description 4
- 230000004044 response Effects 0.000 description 86
- 230000006870 function Effects 0.000 description 75
- 238000001514 detection method Methods 0.000 description 73
- 230000000875 corresponding effect Effects 0.000 description 38
- 230000015654 memory Effects 0.000 description 36
- 238000011156 evaluation Methods 0.000 description 28
- 238000010586 diagram Methods 0.000 description 26
- 238000010801 machine learning Methods 0.000 description 26
- 230000008569 process Effects 0.000 description 25
- 238000005259 measurement Methods 0.000 description 23
- 238000012360 testing method Methods 0.000 description 23
- 238000004364 calculation method Methods 0.000 description 22
- 238000013519 translation Methods 0.000 description 21
- 230000014616 translation Effects 0.000 description 20
- 230000009471 action Effects 0.000 description 17
- 239000013598 vector Substances 0.000 description 17
- 241001637516 Polygonia c-album Species 0.000 description 13
- 238000007781 pre-processing Methods 0.000 description 13
- 239000000725 suspension Substances 0.000 description 13
- 230000008859 change Effects 0.000 description 11
- 238000003860 storage Methods 0.000 description 9
- 239000003550 marker Substances 0.000 description 8
- 230000003068 static effect Effects 0.000 description 7
- 230000009466 transformation Effects 0.000 description 7
- YGYGASJNJTYNOL-CQSZACIVSA-N 3-[(4r)-2,2-dimethyl-1,1-dioxothian-4-yl]-5-(4-fluorophenyl)-1h-indole-7-carboxamide Chemical compound C1CS(=O)(=O)C(C)(C)C[C@@H]1C1=CNC2=C(C(N)=O)C=C(C=3C=CC(F)=CC=3)C=C12 YGYGASJNJTYNOL-CQSZACIVSA-N 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 6
- 239000011159 matrix material Substances 0.000 description 6
- 238000012502 risk assessment Methods 0.000 description 6
- 230000006399 behavior Effects 0.000 description 5
- 238000013507 mapping Methods 0.000 description 5
- 230000002093 peripheral effect Effects 0.000 description 5
- 230000009467 reduction Effects 0.000 description 5
- 238000012546 transfer Methods 0.000 description 5
- HCDMJFOHIXMBOV-UHFFFAOYSA-N 3-(2,6-difluoro-3,5-dimethoxyphenyl)-1-ethyl-8-(morpholin-4-ylmethyl)-4,7-dihydropyrrolo[4,5]pyrido[1,2-d]pyrimidin-2-one Chemical compound C=1C2=C3N(CC)C(=O)N(C=4C(=C(OC)C=C(OC)C=4F)F)CC3=CN=C2NC=1CN1CCOCC1 HCDMJFOHIXMBOV-UHFFFAOYSA-N 0.000 description 4
- IRPVABHDSJVBNZ-RTHVDDQRSA-N 5-[1-(cyclopropylmethyl)-5-[(1R,5S)-3-(oxetan-3-yl)-3-azabicyclo[3.1.0]hexan-6-yl]pyrazol-3-yl]-3-(trifluoromethyl)pyridin-2-amine Chemical compound C1=C(C(F)(F)F)C(N)=NC=C1C1=NN(CC2CC2)C(C2[C@@H]3CN(C[C@@H]32)C2COC2)=C1 IRPVABHDSJVBNZ-RTHVDDQRSA-N 0.000 description 4
- 238000013213 extrapolation Methods 0.000 description 4
- 238000003384 imaging method Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000036961 partial effect Effects 0.000 description 4
- 238000011176 pooling Methods 0.000 description 4
- 230000000644 propagated effect Effects 0.000 description 4
- ABDDQTDRAHXHOC-QMMMGPOBSA-N 1-[(7s)-5,7-dihydro-4h-thieno[2,3-c]pyran-7-yl]-n-methylmethanamine Chemical compound CNC[C@@H]1OCCC2=C1SC=C2 ABDDQTDRAHXHOC-QMMMGPOBSA-N 0.000 description 3
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 3
- 241001465754 Metazoa Species 0.000 description 3
- 230000004913 activation Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000012937 correction Methods 0.000 description 3
- 230000006378 damage Effects 0.000 description 3
- 230000003247 decreasing effect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000000605 extraction Methods 0.000 description 3
- 238000010606 normalization Methods 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 3
- 238000012876 topography Methods 0.000 description 3
- ZGYIXVSQHOKQRZ-COIATFDQSA-N (e)-n-[4-[3-chloro-4-(pyridin-2-ylmethoxy)anilino]-3-cyano-7-[(3s)-oxolan-3-yl]oxyquinolin-6-yl]-4-(dimethylamino)but-2-enamide Chemical compound N#CC1=CN=C2C=C(O[C@@H]3COCC3)C(NC(=O)/C=C/CN(C)C)=CC2=C1NC(C=C1Cl)=CC=C1OCC1=CC=CC=N1 ZGYIXVSQHOKQRZ-COIATFDQSA-N 0.000 description 2
- APWRZPQBPCAXFP-UHFFFAOYSA-N 1-(1-oxo-2H-isoquinolin-5-yl)-5-(trifluoromethyl)-N-[2-(trifluoromethyl)pyridin-4-yl]pyrazole-4-carboxamide Chemical compound O=C1NC=CC2=C(C=CC=C12)N1N=CC(=C1C(F)(F)F)C(=O)NC1=CC(=NC=C1)C(F)(F)F APWRZPQBPCAXFP-UHFFFAOYSA-N 0.000 description 2
- BYHQTRFJOGIQAO-GOSISDBHSA-N 3-(4-bromophenyl)-8-[(2R)-2-hydroxypropyl]-1-[(3-methoxyphenyl)methyl]-1,3,8-triazaspiro[4.5]decan-2-one Chemical compound C[C@H](CN1CCC2(CC1)CN(C(=O)N2CC3=CC(=CC=C3)OC)C4=CC=C(C=C4)Br)O BYHQTRFJOGIQAO-GOSISDBHSA-N 0.000 description 2
- WNEODWDFDXWOLU-QHCPKHFHSA-N 3-[3-(hydroxymethyl)-4-[1-methyl-5-[[5-[(2s)-2-methyl-4-(oxetan-3-yl)piperazin-1-yl]pyridin-2-yl]amino]-6-oxopyridin-3-yl]pyridin-2-yl]-7,7-dimethyl-1,2,6,8-tetrahydrocyclopenta[3,4]pyrrolo[3,5-b]pyrazin-4-one Chemical compound C([C@@H](N(CC1)C=2C=NC(NC=3C(N(C)C=C(C=3)C=3C(=C(N4C(C5=CC=6CC(C)(C)CC=6N5CC4)=O)N=CC=3)CO)=O)=CC=2)C)N1C1COC1 WNEODWDFDXWOLU-QHCPKHFHSA-N 0.000 description 2
- VJPPLCNBDLZIFG-ZDUSSCGKSA-N 4-[(3S)-3-(but-2-ynoylamino)piperidin-1-yl]-5-fluoro-2,3-dimethyl-1H-indole-7-carboxamide Chemical compound C(C#CC)(=O)N[C@@H]1CN(CCC1)C1=C2C(=C(NC2=C(C=C1F)C(=O)N)C)C VJPPLCNBDLZIFG-ZDUSSCGKSA-N 0.000 description 2
- KCBWAFJCKVKYHO-UHFFFAOYSA-N 6-(4-cyclopropyl-6-methoxypyrimidin-5-yl)-1-[[4-[1-propan-2-yl-4-(trifluoromethyl)imidazol-2-yl]phenyl]methyl]pyrazolo[3,4-d]pyrimidine Chemical compound C1(CC1)C1=NC=NC(=C1C1=NC=C2C(=N1)N(N=C2)CC1=CC=C(C=C1)C=1N(C=C(N=1)C(F)(F)F)C(C)C)OC KCBWAFJCKVKYHO-UHFFFAOYSA-N 0.000 description 2
- ZRPZPNYZFSJUPA-UHFFFAOYSA-N ARS-1620 Chemical compound Oc1cccc(F)c1-c1c(Cl)cc2c(ncnc2c1F)N1CCN(CC1)C(=O)C=C ZRPZPNYZFSJUPA-UHFFFAOYSA-N 0.000 description 2
- AYCPARAPKDAOEN-LJQANCHMSA-N N-[(1S)-2-(dimethylamino)-1-phenylethyl]-6,6-dimethyl-3-[(2-methyl-4-thieno[3,2-d]pyrimidinyl)amino]-1,4-dihydropyrrolo[3,4-c]pyrazole-5-carboxamide Chemical compound C1([C@H](NC(=O)N2C(C=3NN=C(NC=4C=5SC=CC=5N=C(C)N=4)C=3C2)(C)C)CN(C)C)=CC=CC=C1 AYCPARAPKDAOEN-LJQANCHMSA-N 0.000 description 2
- IDRGFNPZDVBSSE-UHFFFAOYSA-N OCCN1CCN(CC1)c1ccc(Nc2ncc3cccc(-c4cccc(NC(=O)C=C)c4)c3n2)c(F)c1F Chemical compound OCCN1CCN(CC1)c1ccc(Nc2ncc3cccc(-c4cccc(NC(=O)C=C)c4)c3n2)c(F)c1F IDRGFNPZDVBSSE-UHFFFAOYSA-N 0.000 description 2
- LXRZVMYMQHNYJB-UNXOBOICSA-N [(1R,2S,4R)-4-[[5-[4-[(1R)-7-chloro-1,2,3,4-tetrahydroisoquinolin-1-yl]-5-methylthiophene-2-carbonyl]pyrimidin-4-yl]amino]-2-hydroxycyclopentyl]methyl sulfamate Chemical compound CC1=C(C=C(S1)C(=O)C1=C(N[C@H]2C[C@H](O)[C@@H](COS(N)(=O)=O)C2)N=CN=C1)[C@@H]1NCCC2=C1C=C(Cl)C=C2 LXRZVMYMQHNYJB-UNXOBOICSA-N 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 230000001276 controlling effect Effects 0.000 description 2
- 230000002596 correlated effect Effects 0.000 description 2
- 238000013016 damping Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000000977 initiatory effect Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- FMASTMURQSHELY-UHFFFAOYSA-N n-(4-fluoro-2-methylphenyl)-3-methyl-n-[(2-methyl-1h-indol-4-yl)methyl]pyridine-4-carboxamide Chemical compound C1=CC=C2NC(C)=CC2=C1CN(C=1C(=CC(F)=CC=1)C)C(=O)C1=CC=NC=C1C FMASTMURQSHELY-UHFFFAOYSA-N 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 239000002245 particle Substances 0.000 description 2
- LZMJNVRJMFMYQS-UHFFFAOYSA-N poseltinib Chemical compound C1CN(C)CCN1C(C=C1)=CC=C1NC1=NC(OC=2C=C(NC(=O)C=C)C=CC=2)=C(OC=C2)C2=N1 LZMJNVRJMFMYQS-UHFFFAOYSA-N 0.000 description 2
- 230000002829 reductive effect Effects 0.000 description 2
- 238000007670 refining Methods 0.000 description 2
- XIIOFHFUYBLOLW-UHFFFAOYSA-N selpercatinib Chemical compound OC(COC=1C=C(C=2N(C=1)N=CC=2C#N)C=1C=NC(=CC=1)N1CC2N(C(C1)C2)CC=1C=NC(=CC=1)OC)(C)C XIIOFHFUYBLOLW-UHFFFAOYSA-N 0.000 description 2
- 239000000126 substance Substances 0.000 description 2
- 239000000758 substrate Substances 0.000 description 2
- 239000011800 void material Substances 0.000 description 2
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 2
- VCGRFBXVSFAGGA-UHFFFAOYSA-N (1,1-dioxo-1,4-thiazinan-4-yl)-[6-[[3-(4-fluorophenyl)-5-methyl-1,2-oxazol-4-yl]methoxy]pyridin-3-yl]methanone Chemical compound CC=1ON=C(C=2C=CC(F)=CC=2)C=1COC(N=C1)=CC=C1C(=O)N1CCS(=O)(=O)CC1 VCGRFBXVSFAGGA-UHFFFAOYSA-N 0.000 description 1
- DOMQFIFVDIAOOT-ROUUACIJSA-N (2S,3R)-N-[4-(2,6-dimethoxyphenyl)-5-(5-methylpyridin-3-yl)-1,2,4-triazol-3-yl]-3-(5-methylpyrimidin-2-yl)butane-2-sulfonamide Chemical compound COC1=C(C(=CC=C1)OC)N1C(=NN=C1C=1C=NC=C(C=1)C)NS(=O)(=O)[C@@H](C)[C@H](C)C1=NC=C(C=N1)C DOMQFIFVDIAOOT-ROUUACIJSA-N 0.000 description 1
- MAYZWDRUFKUGGP-VIFPVBQESA-N (3s)-1-[5-tert-butyl-3-[(1-methyltetrazol-5-yl)methyl]triazolo[4,5-d]pyrimidin-7-yl]pyrrolidin-3-ol Chemical compound CN1N=NN=C1CN1C2=NC(C(C)(C)C)=NC(N3C[C@@H](O)CC3)=C2N=N1 MAYZWDRUFKUGGP-VIFPVBQESA-N 0.000 description 1
- UKGJZDSUJSPAJL-YPUOHESYSA-N (e)-n-[(1r)-1-[3,5-difluoro-4-(methanesulfonamido)phenyl]ethyl]-3-[2-propyl-6-(trifluoromethyl)pyridin-3-yl]prop-2-enamide Chemical compound CCCC1=NC(C(F)(F)F)=CC=C1\C=C\C(=O)N[C@H](C)C1=CC(F)=C(NS(C)(=O)=O)C(F)=C1 UKGJZDSUJSPAJL-YPUOHESYSA-N 0.000 description 1
- MOWXJLUYGFNTAL-DEOSSOPVSA-N (s)-[2-chloro-4-fluoro-5-(7-morpholin-4-ylquinazolin-4-yl)phenyl]-(6-methoxypyridazin-3-yl)methanol Chemical compound N1=NC(OC)=CC=C1[C@@H](O)C1=CC(C=2C3=CC=C(C=C3N=CN=2)N2CCOCC2)=C(F)C=C1Cl MOWXJLUYGFNTAL-DEOSSOPVSA-N 0.000 description 1
- SRVXSISGYBMIHR-UHFFFAOYSA-N 3-[3-[3-(2-amino-2-oxoethyl)phenyl]-5-chlorophenyl]-3-(5-methyl-1,3-thiazol-2-yl)propanoic acid Chemical compound S1C(C)=CN=C1C(CC(O)=O)C1=CC(Cl)=CC(C=2C=C(CC(N)=O)C=CC=2)=C1 SRVXSISGYBMIHR-UHFFFAOYSA-N 0.000 description 1
- YFCIFWOJYYFDQP-PTWZRHHISA-N 4-[3-amino-6-[(1S,3S,4S)-3-fluoro-4-hydroxycyclohexyl]pyrazin-2-yl]-N-[(1S)-1-(3-bromo-5-fluorophenyl)-2-(methylamino)ethyl]-2-fluorobenzamide Chemical compound CNC[C@@H](NC(=O)c1ccc(cc1F)-c1nc(cnc1N)[C@H]1CC[C@H](O)[C@@H](F)C1)c1cc(F)cc(Br)c1 YFCIFWOJYYFDQP-PTWZRHHISA-N 0.000 description 1
- XYWIPYBIIRTJMM-IBGZPJMESA-N 4-[[(2S)-2-[4-[5-chloro-2-[4-(trifluoromethyl)triazol-1-yl]phenyl]-5-methoxy-2-oxopyridin-1-yl]butanoyl]amino]-2-fluorobenzamide Chemical compound CC[C@H](N1C=C(OC)C(=CC1=O)C1=C(C=CC(Cl)=C1)N1C=C(N=N1)C(F)(F)F)C(=O)NC1=CC(F)=C(C=C1)C(N)=O XYWIPYBIIRTJMM-IBGZPJMESA-N 0.000 description 1
- KVCQTKNUUQOELD-UHFFFAOYSA-N 4-amino-n-[1-(3-chloro-2-fluoroanilino)-6-methylisoquinolin-5-yl]thieno[3,2-d]pyrimidine-7-carboxamide Chemical compound N=1C=CC2=C(NC(=O)C=3C4=NC=NC(N)=C4SC=3)C(C)=CC=C2C=1NC1=CC=CC(Cl)=C1F KVCQTKNUUQOELD-UHFFFAOYSA-N 0.000 description 1
- CYJRNFFLTBEQSQ-UHFFFAOYSA-N 8-(3-methyl-1-benzothiophen-5-yl)-N-(4-methylsulfonylpyridin-3-yl)quinoxalin-6-amine Chemical compound CS(=O)(=O)C1=C(C=NC=C1)NC=1C=C2N=CC=NC2=C(C=1)C=1C=CC2=C(C(=CS2)C)C=1 CYJRNFFLTBEQSQ-UHFFFAOYSA-N 0.000 description 1
- GISRWBROCYNDME-PELMWDNLSA-N F[C@H]1[C@H]([C@H](NC1=O)COC1=NC=CC2=CC(=C(C=C12)OC)C(=O)N)C Chemical compound F[C@H]1[C@H]([C@H](NC1=O)COC1=NC=CC2=CC(=C(C=C12)OC)C(=O)N)C GISRWBROCYNDME-PELMWDNLSA-N 0.000 description 1
- FEYNFHSRETUBEM-UHFFFAOYSA-N N-[3-(1,1-difluoroethyl)phenyl]-1-(4-methoxyphenyl)-3-methyl-5-oxo-4H-pyrazole-4-carboxamide Chemical compound COc1ccc(cc1)N1N=C(C)C(C(=O)Nc2cccc(c2)C(C)(F)F)C1=O FEYNFHSRETUBEM-UHFFFAOYSA-N 0.000 description 1
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- DGLFSNZWRYADFC-UHFFFAOYSA-N chembl2334586 Chemical compound C1CCC2=CN=C(N)N=C2C2=C1NC1=CC=C(C#CC(C)(O)C)C=C12 DGLFSNZWRYADFC-UHFFFAOYSA-N 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000004020 conductor Substances 0.000 description 1
- 238000005314 correlation function Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000012854 evaluation process Methods 0.000 description 1
- 230000001747 exhibiting effect Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000007429 general method Methods 0.000 description 1
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 1
- 238000010191 image analysis Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 239000012212 insulator Substances 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 238000011068 loading method Methods 0.000 description 1
- 230000000116 mitigating effect Effects 0.000 description 1
- NNKPHNTWNILINE-UHFFFAOYSA-N n-cyclopropyl-3-fluoro-4-methyl-5-[3-[[1-[2-[2-(methylamino)ethoxy]phenyl]cyclopropyl]amino]-2-oxopyrazin-1-yl]benzamide Chemical compound CNCCOC1=CC=CC=C1C1(NC=2C(N(C=3C(=C(F)C=C(C=3)C(=O)NC3CC3)C)C=CN=2)=O)CC1 NNKPHNTWNILINE-UHFFFAOYSA-N 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- XGVXKJKTISMIOW-ZDUSSCGKSA-N simurosertib Chemical compound N1N=CC(C=2SC=3C(=O)NC(=NC=3C=2)[C@H]2N3CCC(CC3)C2)=C1C XGVXKJKTISMIOW-ZDUSSCGKSA-N 0.000 description 1
- 230000000087 stabilizing effect Effects 0.000 description 1
- 238000004441 surface measurement Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 238000001429 visible spectrum Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 230000003245 working effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/05—Geographic models
-
- G—PHYSICS
- G08—SIGNALLING
- G08G—TRAFFIC CONTROL SYSTEMS
- G08G1/00—Traffic control systems for road vehicles
- G08G1/16—Anti-collision systems
- G08G1/166—Anti-collision systems for active traffic, e.g. moving vehicles, pedestrians, bikes
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W40/00—Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
- B60W40/02—Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to ambient conditions
- B60W40/06—Road conditions
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C11/00—Photogrammetry or videogrammetry, e.g. stereogrammetry; Photographic surveying
- G01C11/02—Picture taking arrangements specially adapted for photogrammetry or photographic surveying, e.g. controlling overlapping of pictures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/088—Non-supervised learning, e.g. competitive learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/18—Image warping, e.g. rearranging pixels individually
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
- G06T7/248—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments involving reference images or patches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/55—Depth or shape recovery from multiple images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/55—Depth or shape recovery from multiple images
- G06T7/579—Depth or shape recovery from multiple images from motion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
- G06V20/58—Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
-
- G—PHYSICS
- G08—SIGNALLING
- G08G—TRAFFIC CONTROL SYSTEMS
- G08G1/00—Traffic control systems for road vehicles
- G08G1/09—Arrangements for giving variable traffic instructions
- G08G1/0962—Arrangements for giving variable traffic instructions having an indicator mounted inside the vehicle, e.g. giving voice messages
- G08G1/09623—Systems involving the acquisition of information from passive traffic signs by means mounted on the vehicle
-
- G—PHYSICS
- G08—SIGNALLING
- G08G—TRAFFIC CONTROL SYSTEMS
- G08G1/00—Traffic control systems for road vehicles
- G08G1/16—Anti-collision systems
- G08G1/165—Anti-collision systems for passive traffic, e.g. including static obstacles, trees
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W2420/00—Indexing codes relating to the type of sensors based on the principle of their operation
- B60W2420/40—Photo, light or radio wave sensitive means, e.g. infrared sensors
- B60W2420/403—Image sensing, e.g. optical camera
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30248—Vehicle exterior or interior
- G06T2207/30252—Vehicle exterior; Vicinity of vehicle
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Mathematical Physics (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Geometry (AREA)
- Biophysics (AREA)
- Remote Sensing (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- General Engineering & Computer Science (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computational Linguistics (AREA)
- Computer Graphics (AREA)
- Automation & Control Theory (AREA)
- Transportation (AREA)
- Mechanical Engineering (AREA)
- Radar, Positioning & Navigation (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
- Traffic Control Systems (AREA)
Abstract
本文描述了用于利用相机进行车辆环境建模的系统和技术。可以获得代表道路表面的按时间排序的图像序列。该序列中的一个图像是当前图像。然后可以将数据集提供给人工神经网络(ANN),以产生场景的三维结构。在此,数据集包括该图像序列的一部分,该图像序列包括当前图像、从中获得图像的传感器的运动、和核点。然后使用场景的三维结构对道路表面建模。
Description
优先权声明
本专利申请根据35USC§119要求以下申请的优先权权益:于2018年4月18日递交的、标题为“PARALLAXNET-LEARNING OF GEOMETRY FROM MONOCULAR VIDEO(从单目视频进行几何结构的视差学习)”的美国临时申请序列号62/659,47;于2018年4月26日递交的、标题为“MOVING/NOT MOVING DNN(移动/非移动DNN)”的美国临时申请序列号62/662,965;于2018年4月27日递交的、标题为“ROAD PLANE WITH DNN(具有DNN的道路平面)”的美国临时申请序列号62/663,529;于2018年11月19日递交的、标题为“PUDDLE DETECTION FORAUTONOMOUS VEHICLE CONTROL(用于自主车辆控制的水坑检测)”的美国临时申请序列号62/769,236;以及于2018年11月19日递交的、标题为“ROAD CONTOUR MEASUREMENT FORAUTONOMOUS VEHICLES(用于自主车辆的道路轮廓测量)”的美国临时申请序列号62/769,241;并且,以上所有申请的全部内容通过引用并入本文中。
技术领域
本文描述的实施例大体涉及计算机视觉技术,更具体地,涉及利用相机进行车辆环境建模。
背景技术
通常称为汽车的“自动驾驶”或“辅助驾驶”操作的自主或半自主汽车技术,正在商用和消费级车辆中快速发展和部署。这些系统使用一系列传感器来连续观察车辆的运动和周围环境。可以使用各种传感器技术来观察车辆的周围环境,例如,道路表面和边界、其他车辆、行人、对象和危险、标志和道路标记、以及其他相关项。
用一个或多个相机实现的图像捕获传感器对于对象检测和识别以及读取标志和道路标记特别有用。基于相机的系统已用于测量三维结构,例如道路的竖直轮廓、车道标记、和路缘,并用于检测对象或危险。期望实用的传感器系统在变化的天气和道路条件下可靠地运行。这些期望趋向于在处理输入时带来无数挑战。在夜间来自阴影或灯光的输入噪声可能会干扰道路表面检测。潮湿的道路或其他反射性表面通常会引入明显的运动,这违反了道路表面模型。此外,考虑到这些道路表面检测的困难,在对道路表面进行建模以实现自主驾驶或辅助驾驶时需要对危险进行快速(例如,实时)的检测给硬件带来了负担。
附图说明
在不一定按比例绘制的附图中,相似的数字可以在不同的视图中描述相似的组件。具有不同字母后缀的相似数字可以表示相似组件的不同实例。附图通过示例而非限制的方式大体上示出了本文档中讨论的各种实施例。
图1是车辆环境的示例的框图。
图2是根据实施例的用于利用相机进行车辆环境建模的系统的示例的框图。
图3示出了根据实施例的当前图像和先前图像。
图4示出了根据实施例的用于产生道路表面的伽马(gamma)模型的神经网络的示例。
图5示出了根据实施例的基于机器学习(ML)的竖直轮廓引擎的示例深度神经网络(DNN)。
图6是根据实施例的详述DNN的示例架构的表格。
图7-8是根据实施例的详述DNN的更复杂示例架构的表格。
图9示出了根据实施例的DNN训练系统的示例。
图10示出了根据实施例的多模式损失函数应用引擎的示例。
图11示出了根据实施例的神经网络的示例,该神经网络产生关于对象是否在移动的决策。
图12示出了根据实施例的卷积神经网络的示例,该卷积神经网络产生关于对象是否在移动的决策。
图13是示出根据实施例的用于操作竖直轮廓检测引擎的方法的示例的流程图。
图14是示出根据实施例的用于配置DNN以在基于ML的轮廓引擎中使用的方法的示例的流程图。
图15是示出根据实施例的用于在自主车辆沿道路移动时实时测量道路的竖直轮廓的方法的示例的流程图。
图16是示出根据实施例的用于处理图像序列上的残余流(residual flow)以测量道路的竖直轮廓的示例途径的流程图。
图17是示出根据实施例的用于车辆控制的水坑检测和响应决策的方法的示例的流程图。
图18是示出根据实施例的用于基于竖直轮廓信息和附加的水坑检测标准来通过计算确定存在一个或多个水坑的方法的示例的流程图。
图19是示出根据实施例的用于通过计算确定自主车辆的当前情境场景的方法的示例的流程图。
图20是示出根据实施例的用于对可用驾驶响应解决方案进行计算评估的方法的示例的流程图,这些可用驾驶响应解决方案可以或可以不被选择来对检测到水坑做出响应。
图21示出了根据实施例的用于与自动车辆控制系统一起使用的用于对道路进行轮廓分析的基于相机的车载系统。
图22示出根据实施例的车辆上的多相机阵列。
图23示出了根据实施例的可由多相机阵列捕获的视场的示例。
图24是示出根据实施例的竖直轮廓检测引擎的示例的框图。
图25示出了根据实施例的预处理器引擎的示例。
图26示出了根据实施例的用于利用相机进行车辆环境建模的方法的示例的流程图。
图27是示出可以在上面实现一个或多个实施例的机器的示例的框图。
图28是示出根据实施例的计算设备的示例硬件和软件架构的图示。
图29是示出根据实施例的可以使用的处理设备的框图。
图30是示出根据实施例的中央处理单元的示例组件的框图。
具体实施方式
各种车辆环境建模技术可以与各种传感器配置一起使用。当使用相机(例如,可见光谱、红外(IR)等)时,传感器产生由像素组成的图像。像素的各个方面可用于建模,例如颜色或亮度。一般而言,为对动态环境建模,使用了一系列图像。这种类型的建模跟踪像素在连续图像之间的移动,以推断环境的各方面,例如,车辆如何移动,其他车辆如何移动,对象(例如,人,动物,球等)如何移动,道路上的障碍物等。
将图像转换为归一化状态(例如,以校正相机镜头畸变)、在图像之间按顺序对齐像素(例如,通过单应性(homography)使较早的图像变形以在很大程度上匹配较晚的图像)、以及测量剩余像素运动(例如,残余运动)的迭代过程可用于对环境进行建模。可以如下计算残余运动
其中,项是伽马(gamma)—平面(例如,道路表面)上方的像素的高度H与像素到传感器的距离Z的比值,TZ表示传感器向前的平移(例如,车辆在图像之间移动了多远),d′π表示传感器距平面的高度,表示核点信息(例如,车辆正在向哪行进),以及表示应用基于单应性的变形后的像素的对应图像坐标。
下面描述计算残余运动的一些其他细节。但是,使用直接像素匹配存在一些困难。例如,许多可能投射到道路表面上的事物并不代表道路表面,例如,阴影或反射斑块(例如水坑)。尽管可以使用滤波技术来减少这种噪声,但是更好的解决方案涉及经过训练以直接从一系列图像中计算伽马的人工智能(例如,机器学习系统、人工神经网络(ANN)、深度ANN(DNN)、卷积ANN(CNN)等)。这需要对道路表面成像中的常见噪声问题的鲁棒解决方案。此外,这样的系统还可以接受传感器运动或核点信息以进一步增强其伽马结果。根据伽马,可以确定道路平面上方的像素的高度以及到该像素的距离。这样的道路表面建模对于例如避免坑洼或调整用于减速带的悬架可能是有用的。直接从传感器数据确定伽马(例如,通过ANN)可能优于其他技术(例如,使用二维(2D)光流来确定残余流,或者使用ANN来确定在平面上方的高度和到像素技术的传感器的距离),因为它强化了核点约束。此外,一个伽马可用于对齐(例如,变形)该点的所有图像。尽管可以训练ANN来直接确定点的深度或高度,但是伽马提供了一些好处。例如,伽马计算比深度更稳定,因为距平面的高度发生明显变化可能会导致距相机的深度发生小的相对变化。同样,在给定H和参考平面的情况下,可能计算深度Z,然后计算残余流,但这会增加复杂性,因为ANN为相同结果处理更多数据。这也是利用平面模型对图像进行预变形并提供自我运动(ego-motion,EM)(例如,传感器或车辆的运动,例如,核点和)作为输入的原因。
在示例中,可以使用类似的技术来训练网络以计算Z或H而不是伽马。在该示例中,可以将单应性平面输入参数提供给ANN。例如,该平面可以被定义为水平线(例如,平面的消失线)和到该平面的距离。该线可以被提供为一对距离图像,并且到平面的距离可以被提供为恒定图像。这与上面的提供核点和TZ作为输入的方式类似。在示例中,对齐输入图像以仅考虑旋转(例如,使用单应性,该单应性使用在无限远处平面)并计算Z
在示例中,代替针对整个图像计算伽马然后仅使用沿特定路径的伽马(例如,用于悬架控制(suspension control)),可以训练ANN仅沿着指定路径产生伽马。例如,如果输出仅用于适用于车辆轮胎的事项(例如悬架控制),这可能会更有计算效率,因为去卷积运算可能在计算上很昂贵。可以以多种方式实现路径辨别(例如,仅为该路径产生伽马)。例如,可以在ANN的推断阶段给出路径作为输入,将ANN训练为仅输出沿该路径的值。在示例中,可以如上所述训练完整的ANN以产生伽马。在推断期间,当给出路径时,做出关于在针对该路径的扩展阶段中需要哪些(去)卷积的确定并且仅应用那些(去)卷积。例如,为确定输出的完整行的伽马值,需要沿着整行进行卷积。然而,对于输出行的仅一段,仅需要在与该段相对应的特定范围内执行去卷积。
另外,经过不同训练的、具有相似结构的ANN也可以将对象分类为移动的或不移动的。例如,可以使用移动/不移动分类来提高主车辆更好地选择事故避免动作的能力。同样,将输入图像直接用于识别特征中的残余运动并确定结果。下面描述附加的细节和示例。
图1是示出车载相机的示例视场100的图示,在该示例视场100存在各种对象。如图所示,视场100包括道路表面102,其可以具有一个或多个表面特征104,例如,凹陷104A(例如,坑洼、栅格、凹陷等)或突起104B(例如,减速带、路缘、碎屑等)。视场100还可以包括阴影106、反射表面108(例如,水坑、冰等)、行人110、或另一车辆112。对表面特征104进行建模可以使得车辆能够避开它们、向驾驶员发出警报、或者调整自身以更好地操纵它们(例如,调整车辆悬架以越过坑洼104A)。对移动的或可能移动的行人110或车辆112进行理解和建模可类似地使得车辆能够控制更改或向驾驶员发出警报以避免撞到它们,甚至避免或减少与它们的不合需要的交互(例如,行驶通过水坑108而飞溅到行人110),例如减速或调整行驶路径、停车等。
道路建模的这些要素都可能带来一些挑战,本文所述的设备和技术将解决这些挑战。例如,阴影106是用于道路表面点跟踪的噪声。来自水坑的反射不仅掩盖了下面的道路表面而削弱点跟踪,而且实际上展示了图像之间的像素运动,这通常与其他位置的像素运动相反。
图2是根据实施例的利用相机202进行车辆环境建模的系统208的示例的框图。系统208固定在车辆204上。在示例中,系统208被集成到相机202或其他传感器中。在示例中,系统208与相机202或其他传感器(例如,车辆204的信息娱乐系统的一部分)分离。在此,通过示例的方式,相机被示出为安装在挡风玻璃上的前视相机。但是,本文所述的技术同样适用于安装在车辆内部或外部的后置或侧面相机。一个这样的示例是外部地安装在顶篷的拐角处的相机,其具有前向且稍微偏向侧面的视场。
系统208包括处理电路,以经由从相机202获得的图像来执行车辆环境建模。车辆环境建模可以包括对道路表面206、障碍物、妨碍物、和移动体(例如,其他车辆、行人、动物等)进行建模。这些模型可以由系统208直接使用、或通过另一管理系统使用,以调整车辆204的运行参数。为了执行建模,系统208被布置为获得代表道路表面206的按时间顺序排列的图像序列。该图像序列中的一个图像是当前图像(例如,相机202所拍摄的最后图像)。
系统208被布置为向人工神经网络(ANN)提供数据集以产生伽马图像。在此,伽马图像的像素是针对点的伽马值。如其他地方所述,伽马值是点在平面上方的高度与距捕获当前图像的传感器的距离的比值。另外,在此,平面表示道路表面206。
尽管下面使用“伽马图像”,但是可以使用其他数据格式来表示场景中的伽马。因此,伽马可以不是栅格格式,而是可以是使得伽马值能够经由传感器数据与表面相关的任何形式(例如,值到点的伽马图)。这些各种数据结构可以统称为伽马模型。
在示例中,数据集包括图像序列的一部分。在此,图像序列的一部分包括当前图像。数据集还包括传感器202的运动(例如,传感器移动信息)和核点(epipole)(例如,核点信息)。在示例中,图像序列的一部分包括紧接着在当前图像之前的图像。在示例中,该图像序列的一部分总共是三个图像。在示例中,该序列可以包括任意n个图像,其中n是大于一的整数(即,)。在示例中,序列中的图像可以是连续捕获的图像。在示例中,在生成在数据集中使用的图像序列的过程中,可以省略原始帧序列中的一些帧。
在示例中,以与当前图像相同的维数(尽管可能采用更大或更小的分辨率)将核点提供为梯度图像。在此,梯度图像中的像素值表示当前图像中的像素距核点的距离。在示例中,梯度图像仅表示距核点的水平(例如,x轴)距离,并且向ANN提供第二梯度图像以表示距核点的竖直(例如,y轴)距离。
在示例中,传感器206的运动被提供为具有与当前图像相同的维数(尽管可能是更大或更小的分辨率)的恒定值图像。在示例中,该恒定值是传感器206的前向运动(例如,z轴)与传感器202距平面206的高度的比值。
在示例中,ANN是卷积神经网络(CNN)。在示例中,传感器206和核点的运动在瓶颈层(bottleneck layer)处被提供给CNN(例如,参见下面关于图5的讨论)。
在示例中,利用无监督训练技术来训练ANN,其中通过测量未来图像模型与实际未来图像之间的差异来确定误差。在此,未来图像的模型是通过对未来图像之前的图像进行伽马变形来产生的。因此,在此示例中,推断的伽马值被用于预测未来图像将看起来是什么样的。当与未来图像进行比较时,使用与模型的偏差来校正ANN。
在示例中,利用无监督训练技术来训练ANN,其中通过测量针对一位置的预测伽马与该位置处的传感器202移动之间的差异来确定误差。因此,预测了伽马,并且传感器202或车辆204的自我运动被用来确定该伽马推断是否正确(或推断的错误程度如何)。在此示例中,如果ANN预测道路表面206存在向下倾斜,而随后车辆没有检测到这种向下倾斜,则训练会纠正预测该向下倾斜的推论。在示例中,传感器移动可以包括俯仰、偏航、侧倾(roll)、或垂直于该平面的平移中的一者或多者。
在示例中,利用无监督训练技术来训练ANN,其中误差是由在两个不同时间下的两个图像之间的重叠片段的伽马之间的差异来确定的,其中对第一图像执行推断,并且其中重叠片段在第二图像中更靠近传感器202。因此,在训练中,具有随后由车辆204穿过的表面206的视图的图像是先前图像。重叠片段的伽马值由ANN推断,并通过计算未来图像中相同段的伽马值进行检查。当传感器202更接近一特征(例如,将来的重叠片段)时,系统对伽马的估计值可能会更好,并且可以用在损失函数中来训练ANN。因此,将从当前三倍图像推断出的伽马图与从向当前伽马图变形的未来三倍图像推断出的伽马图进行比较。当训练ANN时,两个伽马图之间的比较值(例如,差值或到最接近的表面点的距离)被用作损失的一部分。
系统208被布置为使用伽马图像对道路表面206进行建模。在示例中,对道路表面进行建模包括计算与道路表面特征的平面的竖直偏差。在示例中,对道路表面进行建模包括计算图像序列中的特征的残余运动。在此,特征的残余运动是伽马值、传感器206的运动、和核点的乘积。
在示例中,对道路表面进行建模包括使用伽马值使先前图像变形到当前图像。基于伽马的变形特别准确,因为伽马使得特征能够基于其距传感器202的距离以及其在道路表面206上方的高度在图像之间进行匹配,而不是尝试有时匹配图像中的那些特征的像素的短暂或复杂的颜色变化。
在示例中,对道路表面进行建模包括从经伽马变形的图像识别反射区域。在此,伽马变形的准确性可以使得能够进行诸如水坑之类的反射区域的识别,因为反射产生的视觉信息的操作方式与图像中的其他对象不同。例如,虽然当车辆接近时极点(pole)的顶部可能看起来比极点的底部更快地朝向传感器202移动,但是极点的许多反射将看起来相反。因此,经训练的ANN将使像素与非反射移动相匹配,并忽略反射区域,因为其中的像素运动与其他像素的运动不相符。此行为在整个反射表面上产生平坦的伽马。经伽马变形的图像中具有平坦的伽马的连续区域可被识别为反射区域。
在示例中,对道路表面建模包括在使用伽马值进行变形之后通过残余运动的连续区域来识别反射区域。在使用伽马变形后,剩余的残余运动将被限制在表现出该独特行为的这种区域中。在示例中,这种残余运动区域也可用于确定运动,例如,另一车辆、行人、移动的碎屑等的运动。
在示例中,与当训练时在第一ANN的损失函数中使用的主要几何约束相对地,可以在另外的ANN的损失函数中使用摄影测量约束来训练该ANN。如上所述,在利用主要几何约束进行训练之后,第一ANN通常将忽略反射表面中的运动。然而,另外的ANN不会因为摄影测量约束将在训练期间调整该另外的ANN以尝试解释反射表面中的运动。因此,在示例中,比较从第一ANN和第二ANN产生的伽马可以揭示其中产生的两个伽马图不一致(例如,超过阈值)的反射表面。
在示例中,系统208还被布置为在特征的残余运动上调用第二ANN,以确定这些特征表示在道路表面206的环境内移动的对象还是不移动的对象。在示例中,向第二ANN提供当前图像、至少一个先前图像、以及目标标识符。目标标识符可以由另一系统提供,例如车辆识别系统。在示例中,目标标识符是一个或多个图像,其中图像的像素指示距目标的中心的距离,类似于以上针对核点信息描述的梯度图像。在示例中,目标标识符包括目标的大小。在示例中,目标的大小是恒定值图像(例如,类似于上面的传感器移动信息图像)。在示例中,目标标识符是与目标相对应的像素的掩码。下面参照图11和图12描述这种第二ANN的示例。
图3示出了根据实施例的当前图像304和先前图像302。在当前图像304中,两条线306和308被置于的轮胎的底部和减速带的顶部。要注意,线306如何与先前图像302中的轮胎对齐。从线起的双端箭头指示该线相对于路缘的固定端的移动。类似地,线308示出在先前图像302和当前图像304之间减速带的顶部已移动。当图像302变形为图像304时,图像的静态特征将匹配,但车辆的底部将移动。
图4示出了根据实施例的用于产生道路表面的伽马模型414的神经网络412的示例。图5-10示出了类似412的神经网络的一些附加细节和示例。但是,作为概述,每个像素的残余运动由三部分组成:伽马、传感器(例如,车辆)运动、和核点信息,如下:
伽马通过点在平面上方的高度H和该点距传感器的距离Z来描述每个像素处的场景的结构。因此,在给定传感器移动信息和核点信息的情况下,神经网络412确定伽马模型414,并且可以计算每个点的残余运动以使得一个图像能够变形到另一图像。
在给定准确的伽马模型414的情况下,图像变形非常准确,因为每个像素的距离和高度,通常表现得好像图像是静态场景。经典技术首先计算残余流,然后通过去除核点信息和传感器移动信息来计算伽马。根据伽马,沿着一条或多条轨道(例如,轮胎路径)计算点的高度和距离。然而,如上所述,道路表面图像中噪声的变化程度导致直接残余运动检测有时会出现问题。
训练神经网络412以直接从图像中计算伽马提供了对图像中发现的噪声的鲁棒对抗。因此,在给定当前图像402、使用单应性以及自我运动410和核点(例如,平面)参数(图像406和408)作为输入而变形的一个或多个先前图像404的情况下,神经网络产生伽马值的图像414作为输出。如图所示,伽马模型414中的阴影越浅,伽马值越低。而且,从损失计算中省略了车辆来训练神经网络412。这样做是为了防止车辆的运动在训练期间影响附近的伽马值,但是,在推断期间通常不会掩盖车辆。在示例中,在训练期间,未从神经网络412损失函数中掩盖车辆或其他移动对象。
如图所示,将核点信息和传感器移动信息作为图像提供(例如,值的栅格)。传感器移动信息图像410是恒定值的图像(例如,每个像素具有相同的值)。由分别具有在水平(例如,x)406和竖直(例如,y)408方向上到该核点的距离的像素值的两个图像表示核点信息。在使用卷积神经网络(CNN)时,将核点信息提供为梯度图像而不是两个值是有帮助的。在CNN中,在整个图像402上运行相同的滤波器组,并且必须告知每个图像区域其相对于核点的位置。通过使用梯度图像406和406,滤波器具有针对每个卷积的核点信息。
图5是示出基于ML的轮廓引擎的示例DNN 500的图示。在示例中。如图所示,DNN500包括具有各种操作层的卷积网络部分502,这些操作层可以包括卷积层、激活层、规范化层、和池化层。可以另外包括其他操作层,例如内积层。在示例中,DNN 500另外包括去卷积部分504,包括去卷积(例如,转置卷积)层、激活层、规范化层、和解池化层。
在示例中,将一组预处理图像530作为输入506提供给卷积网络部分502。每层生成特征图,该特征图继而被传递到后续层,以便沿着前向传播路径508进行进一步处理。如图所示,卷积网络部分502的操作用于逐渐地减小特征图的分辨率,同时增加沿着卷积前向传播路径508A的特征图的通道的数量(维数)。去卷积网络部分504的操作用于逐渐地增大特征图的分辨率,同时减小其沿着去卷积前向传播路径508B的维数。
在示例中,除了前向传播路径508之外,还可以提供一个或多个旁路路径510,以促进特征图从在先层传递到在后层,同时跳过位于该在先层和在后层之间的一个或多个中间层。作为示例,旁路路径510可以在卷积网络部分502的层与去卷积网络部分504的类似维数的层之间传递特征图。
“瓶颈”网络部分512位于卷积网络部分502和去卷积网络部分504之间。在示例中,瓶颈网络部分512具有与其他层相比具有较低分辨率和较高维数的一个或多个层。在示例中,瓶颈部分512包括输入514,其被配置为接受图像格式的运动标记526和图像格式的核点位置数据528。
在示例中,训练DNN 500以产生道路结构532,作为与预处理图像530的当前(最新)图像相对应的伽马值的按像素映射。作为DNN 500的输出的道路结构532可以具有与预处理图像530相同或不同的分辨率。例如,道路结构532的分辨率可以按因子0.25、0.5、1、1.5、2或其他缩放因子进行缩放,该因子可以是整数或非整数值。
在另一示例中,道路结构532可以对应于预处理图像530的当前图像的一部分。例如,道路结构532可以对应于视场100(图1)的裁剪图像,从其中省略了不表示道路表面的一些部分。
要注意的是,道路结构532的像素中的伽马值是无量纲值。在示例中,DNN 500针对水平线上方的点产生其他无量纲值(例如,)的映射作为其输出。当伽马的值已知时,可以使用关系来恢复距离Z和道路表面的高度H,其中N′是N的转置,(x,y)是图像坐标,f是焦距。DNN训练引擎550被配置为训练DNN 500,以基于一组训练数据产生对道路结构532的准确确定。图9是更详细地示出DNN训练系统550的图示。如图所示,DNN训练系统550包括具有与DNN 500相同或相似架构的DNN902,以及多模式损失函数应用引擎950。
图6是根据实施例的详述DNN的示例架构的表格。如图所示,按照以下方面来描述每一层:其操作类型,连接(表示为输入0、输入1和输出0),输出通道的数目,以及卷积/去卷积架构(包括内核宽度和步长),以及激活函数和规范化类型。要注意的是,具有在输入/1列中指示的第二输入以及所标识的第二输入源的层具有旁路连接。
到图6的DNN的第1层的输入包括一组预处理图像,在输入/0列中被表示为“图像”。图像格式的核点标记和图像格式的运动标记被输入到第8层,如输入/1列中的“核点/运动”所示。
图7-图8是根据实施例的详述DNN的更复杂的示例架构的表格。在第1层处,将图像输入到DNN,如输入/1列中的“图像”所示。向第9层输入图像格式的核点标记和图像格式的运动标记,如输入/1列中的“核点/运动”所示。一些层(第44层和第49层)具有用于旁路连接的第三输入,以输入/2列表示。另外,图7-图8的示例DNN的某些层执行调整大小操作,例如,第22层、第28层、第34层、第42层、第47层和第52层。要注意的是,第52层将特征图的大小调整为与预处理图像330相同的大小。
图9示出了根据实施例的DNN训练系统的示例。在此,多模式损失函数应用引擎950被配置为将训练数据930作为输入提供给DNN 902。训练数据830可以包括由一个或多个车载相机捕获的图像帧的各种序列。图像帧可以包括例如在各种照明和天气条件下在各种地理区域中的各种道路上捕获的视频镜头。
训练数据930可以伴随有与训练数据930的各个部分相对应的图像格式的运动标记926和图像格式的核点标记928。图像格式的运动标记926和图像格式的核点标记928可以被馈送到与用于训练数据930的图像帧的输入层不同的输入层,以匹配DNN 902的结构和操作布置。这些输入沿前向传播路径908前进通过DNN 902,以产生道路结构932作为DNN 902的输出。
可以最初利用计算参数(例如,权重、偏差等)的随机值配置DNN902。训练过程用于调整计算参数的值,以优化DNN 902的输出,即道路结构932。多模式损失函数应用引擎950被配置为执行参数优化。在示例中,使用多个不同的损失函数来确定DNN 902的输出的准确度。多模式损失函数应用引擎950为DNN 902的各个层产生计算参数调整920,这是使用沿着反向传播路径910的向后传播来设置的。
在示例中,针对DNN 902的各个层的计算参数调整920被收集并存储在计算参数数据结构925中,计算参数数据结构925定义DNN 902的训练结果。在示例中,将计算参数数据结构925传递(例如,作为DNN训练系统输出的一部分)到竖直轮廓检测引擎,在此将其存储为用于配置基于ML的轮廓引擎的计算参数。在示例中,推断引擎训练同时在当前三元组和未来的三元组上运行,以分别产生output_curr(当前输出)和output_future(未来输出)。可以将几何损失与来自output_curr的其他损失组合,并往回传播以调整网络的权重,并且也可以传播没有几何损失的来自output_future的损失以调整权重。在示例中,可以忽略output_future的几何损失,仅将output_curr用于训练。
图10示出了根据实施例的多模式损失函数应用引擎1050的示例。在所描绘的示例中,多模式损失函数应用引擎1050包括四个不同的损失函数训练引擎:摄影测量损失函数训练引擎1004、预测图像摄影测量损失函数训练引擎1006、EM损失函数训练引擎1008、和几何损失函数训练引擎1010。此外,多模式损失函数应用引擎1050包括反向传播引擎1012和训练数据库1020。损失函数训练引擎1004-1010被配置为对照用于代替传统的“地面实况”值的相应的参考标准比较道路结构1032,来确定道路结构1032的准确度的误差或损失。
在示例中,未(像在传统的有监督的机器学习系统中那样)使用实际的地面实况数据。替代地,处理训练数据的图像以及其他可用数据(例如,与图像相对应的自我运动、相机高度、核点等),来产生用于评估损失函数的参考标准。在某种意义上,由于参考标准是基于训练数据的,因此可以将其视为一种无监督学习。
在示例中,地面实况数据可用于训练数据。作为示例,可以通过诸如三维成像或扫描测量(例如,立体成像、LiDAR扫描等)之类的附加测量模式来提供地面实况数据。因此,一个或多个损失函数可以基于实际的地面实况来提供一种监督学习。
损失函数训练引擎1004-1010可以各自贡献用于训练DNN的总体损失函数的一个分量。反向传播引擎1012可以被配置为关于可变计算参数(例如,权重、偏差)计算整体损失函数的偏导数,以使用梯度下降技术来确定每个相应操作参数的调整方向。反向传播引擎1012可以在沿着反向传播路径的每个连续层处应用更新的计算参数值。训练数据库1020可以包含训练数据、图像格式的运动标记、和图像格式的核点标记,以应用于DNN的(一个或多个)适当输入层。在示例中,根据张量流图元函数来定义损失函数,该张量流图元函数包括这种图元的复杂组合。一旦以此方式定义了损失,就可以使用张量流来计算偏导数。
摄影测量损失函数训练引擎1004被配置为基于来自在前向传播路径中被提供给DNN的训练数据的一组图像帧生成参考标准。在示例中,将三个图像(当前图像、先前图像、和再先前图像)用作DNN的输入,使用被生成为道路结构1032的伽马图来将先前图像和再先前图像变形到当前图像。校正每个变形图像以补偿残余流,并将其与实际当前图像进行比较。
可以根据下式确定残余流补偿
可以使用适合的技术来计算图像比较,例如,规范化互相关、总绝对差值(SAD)、二进制描述符距离等,其可根据下式应用于围绕每个像素的图像的补丁(patch):
其中Icurr是未变形的当前图像,Iw是经伽马变形和残余流补偿的先前(或再先前)图像,以及Ibaseline是变形前的先前(或再先前)图像。在示例中,对象检测(例如,车辆检测、自行车/行人检测)被用于从损失函数中掩盖运动对象,以减少在所比较的图像之间检测到的运动。图像比较可以包括图像之间的灰度级比较。
在示例中,摄影测量损失函数训练引擎1004将可变权重应用于图像比较的与道路和非道路特征相对应的部分。因此,可以消除在非道路部分中发现的所比较的图像之间的差异程度。
预测图像摄影测量损失函数训练引擎1006被配置为执行与摄影测量损失函数训练引擎1004类似的图像变形、补偿和比较技术,不同之处在于,除使用DNN用于产生道路结构1032的图像外在图像比较处理中还包括一个或多个“未来”或“过去”图像。“未来”图像是比用于训练DNN的当前一组图像更晚捕获的图像,而“过去”图像是更早捕获的图像。因此,对于未来图像,由预测图像摄影测量损失函数训练引擎1006提供的损失函数分量使用在运行时不可用的训练数据。要注意的是,计算出的推断产生对该推断不被视为输入的图像起作用的伽马。
EM损失函数训练引擎1008被配置为基于将道路结构1032与“未来”自我运动进行比较来产生损失函数分量,该“未来”自我运动表示车辆在与道路结构1032相对应的道路部分上的通过。作为示例,在不存在道路结构832中有任何颠簸或孔洞的任何指示的情况下,指示道路上的颠簸或孔洞的自我运动是一种损失。在示例中,可以使用向上或向下的曲率。在示例中,EM可以延伸超过20m(例如,多达50m)。即使当部分道路距离太远而无法计算残余流时,这也可以帮助DNN从道路结构正确建模表面的长距离形状。类似地,当道路结构1032预测在该位置(特别是在车轮的行驶路径中)出现颠簸或空洞时,缺少与该颠簸或空洞相对应的自我运动会造成损失。
在示例中,将具有0.5Hz频率的低通滤波器或阻尼弹簧模型应用于道路结构1032,以在车辆经过道路地形时对车辆的悬架的阻尼效应进行建模。在另一示例中,在可获得车辆的悬架状态的情况下,将悬架信息与自我运动一起考虑,以更准确地测量车轮的竖直运动。
几何损失函数训练引擎1010被配置为使用包括“未来”图像帧和对应的“未来”自我运动的一组或多组“未来”训练数据来产生损失函数分量。“未来”图像帧表示在用作输入的当前图像帧之前(与当前图像帧相距更大的距离或比当前图像帧更晚捕获)的定义距离或时间步长处捕获的图像。例如,“未来”图像帧和自我运动可以对应于训练数据的捕获图像的随后接着的三个(图像)。在另一示例中,“未来”图像帧和自我运动对应于距车辆的位置5米、20米、或某个其他定义的距离。
参考标准基于使用DNN计算的“未来”道路结构(例如,伽马图)。几何损失函数训练引擎1010使用“未来”自我运动将“未来”道路结构变形为当前道路结构832,或者使用“未来”自我运动将当前道路结构1032变形为“未来”道路结构。
在示例中,将“未来”道路结构变形为当前道路结构1032,并在其之间进行第一比较,并且将当前道路结构1032变形为“未来”道路结构,并在它们之间进行第二比较。可以将第一比较和第二比较的结果进行组合(例如,平均)以产生汇总比较,然后将该汇总比较用于确定几何损失函数训练引擎1010的损失函数。
在示例中,在使用多个相机和重叠的视场的情况下,来自多个视场的相关图像可以用于实现几何损失函数训练。例如,可以处理“未来”左图像和中心图像(在时间t3),要求来自时间t3的经伽马变形的图像在光度上类似于在时间t2的中心图像。可以使用未来的两对图像来设置条件,即从那些图像推断出的伽马在校正相机运动之后类似于使用来自时间t1和t2的图像得出的伽马。在示例中,中央主相机可以与一个或多个安装在车顶的左角或右角上的朝向前方或朝向侧面的相机一起使用。这些侧面相机可以具有宽于90度的视场。右相机的视场可以与主相机的右视场明显重叠,并且可以具有向后延伸的视场。左相机的视场可以与主相机的左视场明显重叠,并且可以具有向后延伸的视场。在图22中示出了相机的这种布置,其中相机2212B是主相机,相机2212A和2212C分别是左侧相机和右侧相机。在示例中,来自角相机的图像可以在训练阶段中用于计算损失函数,而无需在推断阶段被使用。
由反向传播引擎1012将由两个或更多个损失函数训练引擎1004-1010贡献的损失函数分量组合成聚合多模式损失函数,该聚合多模式损失函数用于例如使用梯度下降技术训练DNN来生成计算参数调整。
图11示出了根据实施例的神经网络1112(例如,DNN)的示例,该神经网络1112产生关于对象是否正在移动的决策。神经网络1112的操作类似于上述神经网络,例如神经网络412。神经网络1112的输入包括当前图像1102、一个或多个先前图像1104、目标位置和目标大小。尽管在图11中示出的示例使用神经网络1112来确定目标是否正在移动,但在示例中,可以使用伽马对齐来确定移动的目标,该伽马对齐使用来自上述网络412的伽马并利用启发式技术测量残余运动。例如,如果在诸如车辆或车轮之类的已知类型的目标的底部检测到残余运动,则可以得出该车辆正在移动的结论。
如图所示,目标位置和大小作为图像被输入。目标位置包括两个梯度图像,其中像素值代表距目标中心的距离。在此,水平梯度图像1106(例如,位置x或Px)和竖直梯度图像1108(例如,位置y或Py)组成对神经网络1112的目标位置的输入。这些图像包括目标的外形以说明与目标的梯度的关系。目标大小在此被表示为图像,其中所有像素都具有代表目标的大小的相同值(例如,恒定值图像)。在示例中,掩模1116(例如,模板)可以用于识别目标。在示例中,掩模替换梯度图像1106和1108或大小图像1110中的一个或多个。使用掩模可以减少例如在单个目标的情况下由神经网络1112处理的图像数据的量。对于多个目标,掩模可能会导致多次处理输入图像的相同部分,但是,例如,如果稍后在卷积推断链中使用掩模,则可以缓解这种情况。
例如,神经网络1112的输出1114是目标是在移动、不移动、还是“可能”移动的类别标签,该类别标签表示无法以置信度阈值确定对象是否正在移动。在示例中,类别标签是实数值得分,其中大值(例如,高于第一阈值)指示移动,低值(例如,低于第二阈值)指示不移动,并且在第一阈值和第二阈值之间意味着可能移动。输出1114可以是针对一个目标推断的单值,或者可以是针对多个目标的向量(如图所示)。
为了一次处理多个目标,可以生成输出向量。例如,图像1102中多达八个汽车的八个输出将覆盖大多数场景。在示例中,使用诸如从一到八的数字之类的不同标签对每个车辆进行掩盖1116。然后,位置i(例如vi)处的输出1114将对应于标签i掩盖的区域。如果检测到k<8辆车,则使用标签1到K,并且在训练和推断阶段忽略矢量值K+1到*。在示例中,输出1114是奇异的(singular),神经网络1112经由二进制掩码在每个目标上独立地(例如,串行地)操作。
在示例中,将输入图像1102和1104对齐。在示例中,对齐是基于单应性的。在示例中,对齐是基于道路表面对齐(例如,伽马对齐)的。图像对齐通过道路表面上的稳定点(例如,静止车辆的车轮和道路的接触点)来简化神经网络1112的训练或推断。因此,神经网络1112仅需要识别目标的残余运动来确定其正在移动。
图12示出了根据实施例的卷积神经网络1204的示例,该卷积神经网络1204产生关于对象是否在运动的决策。在此,不是使用两个输入图像,而是可以使用三个或更多个输入图像1202来提供更准确的结果。尽管可以使用许多有效的神经网络结构,但是这里示出的是卷积级1204,其后是仿射级1205,该仿射级1205将来自整个图像1202的信息聚合为单个值(例如,移动/不移动/未知)。
在示例中,卷积级1204接收图像1202作为三个通道。然后,卷积级1204降低图像1202的分辨率,但是增加通道的数量,这创建了复杂的特征。在示例中,目标位置可以在第一层中被引入为第四通道。在示例中,可以稍后引入目标位置,例如在瓶颈中,或者在卷积级1204的狭窄部分(其中存在许多低分辨率的通道),或者在仿射级1208处。在稍后的阶段中针对多个目标引入目标掩模1206是有利的。例如,直到目标(例如,掩模1206)的引入为止的计算的第一部分可被执行一次,并且将该结果用于所有目标。
在示例中,使原始图像1202作为仿射级1208的输入是有用的。这可以通过“跳过”路径来实现。尽管是可选的,但是这种结构可以改善性能分类执行。
图13是示出根据实施例的用于操作竖直轮廓检测引擎的方法1300的示例的流程图。由诸如上面或下面描述的计算硬件(例如,处理电路)执行方法1300的操作。
在操作1002,获得(例如,读取或接收)原始数据,包括两个或更多个图像帧的序列、地平面、和自我运动数据、以及相机高度信息。图像帧可以包括当前(例如,最近捕获的)图像以及一个或多个先前捕获的图像。在操作1004,处理原始数据以确定图像帧的序列之间相对于道路平面的单应性。然后,可以将一些图像帧变形以使得道路平面与序列的另一图像帧对齐。根据示例,变形可以基于所测量的自我运动和地平面的特性。自我运动可以是所测量的运动,或者可以通过计算从图像帧的内容确定。变形的图像帧可以包括当前图像帧,并且一个或多个先前的图像帧被变形为与当前图像帧相对应。在另一示例中,当前图像帧和一个或多个其他帧被变形以对应于未变形的较早图像帧。
在示例中,在被DNN使用之前,针对诸如径向透镜畸变之类的透镜畸变对图像进行校正。这种校正避免了在特定透镜上训练DNN。另外,要注意的是,焦距不是伽马的等式的组成部分,从而可以训练来自多个不同相机类型的图像。
在操作1006,处理附加的原始数据(包括自我运动数据、地平面数据、和相机高度数据),以产生运动信息(例如,核点),该运动信息被格式化为一个或多个图像。
在操作1010,使用DNN来产生推断。DNN可以执行卷积、非线性激活、和池化操作。在示例中,执行去卷积和解池化操作。在各个层,根据DNN的预建立的训练,通过DNN的操作来应用经训练的计算参数,例如,权重或偏差。如上所述,DNN在推断模式下的操作产生道路结构图,例如伽马图。在车辆以高达五十千米每小时(50km/h或约31英里每小时)行驶时,使用诸如DNN之类的工具能够产生准确到距车辆十米(10m)分之一厘米(1cm)或甚至是半毫米(0.5mm)内的地形测量。
在操作1012,从道路结构图提取道路轮廓信息。还可以从道路结构图提取附加信息,例如残余流信息,可以针对相关应用对该附加信息进行进一步处理。
道路轮廓信息可被传递到自动或半自动车辆控制系统,该系统自动调整车辆操作的某些方面。例如,悬架控制系统可以基于表示车辆的预期行驶路径的竖直轮廓数据来动态地调节车辆的悬架,悬架调节可以包括动态地改变悬架的刚度,或者改变各个车轮的高度以符合道路的竖直轮廓。
在示例中,道路轮廓信息可以被传递到驾驶策略系统,该驾驶策略系统可以使用环境模型来确定未来的导航动作。驾驶策略系统可以使用道路轮廓信息来选择或确定导航动作。驾驶策略系统的示例是例如在第WO2018/001684号国际申请公开中描述的RSS,该国际申请的全部内容通过引用并入本文中。
图14是示出根据实施例的用于配置DNN以用于基于ML的轮廓引擎的方法1400的示例的流程图。由诸如上面或下面所描述的计算硬件(例如,处理电路)执行方法1400的操作。
在操作1402,将训练数据馈送到训练DNN。在训练DNN以其推断模式进行操作时,训练数据被前向传播以产生测试结果作为其输出。将测试结果与具有多个分量的损失函数进行比较。在操作1404,应用摄影测量损失函数分量。摄影测量损失函数分量使用测试结果将训练数据的一个或多个先前图像变形为训练数据的当前图像,并基于当前图像与先前图像之间的差异产生损失。可以在围绕每个像素的补丁上使用归一化互相关函数,以确定比较的图像帧之间的差异。
在操作1406,应用预测图像摄影测量损失函数分量。预测图像摄影测量损失函数分量采用与操作1404类似的技术,不同之处在于,在对图像进行基于测试结果的图像变形以促进比较之后,将附加训练数据(例如,不同于用于生成测试结果的训练数据)与当前图像和先前图像进行比较。比较产生的任何差异均作为附加损失分量处理。
可选地,在操作1404和1406中,出于比较和损失计算的目的,可以给道路特征和非道路特征赋予不同的权重,其中道路特征的权重更大。另外,可以掩盖诸如车辆和行人之类的已知移动对象,以减少对所比较的图像之间的残余流的检测。
在操作1408,应用EM损失函数分量。EM损失函数分量使用与车辆传递训练数据图像(训练数据图像被处理以生成测试结果)相对应的EM数据,并且基于测试结果将EM数据与车辆的预期运动进行比较以提供损失分量。
在操作1410,应用几何损失分量。几何损失分量使用了一部分训练数据,这些训练数据未被用于生成测试结果。具体地,如上所述,由训练DNN处理“未来”图像以产生“未来”测试结果。基于“未来”EM对“未来”测试结果进行变形以使其与测试结果对齐,或者—可替代地或附加地—基于“未来”EM对测试结果进行变形以使其与“未来”测试结果对齐,并且计算“未来”和当前道路结构测试结果之间的比较,以提供额外的损失分量。
在操作1412处,将损失函数分量聚合为用于梯度下降计算的多模式损失函数。在示例中,可以利用任意两个或更多个损失函数分量。例如,可以聚合任何损失函数分量组合,如下表所示:
在操作1414,通过训练DNN反向传播聚合的损失函数,其中在DNN的每个可训练层为计算参数计算偏导数。在操作1416,基于所计算的损失函数的梯度来调整每个可训练层的计算参数,以使得损失最小化。在操作1418,可以使用附加训练数据来重复训练过程,以进一步优化参数值。在每次反向传播迭代之后,可以应用训练迭代标准(例如,基于参数收敛),以确定是否需要额外的训练周期。
在操作1420,建立计算参数数据结构以包含用于DNN的每一层的优化的计算参数值。数据结构可以采用任何合适的形式,例如,表格、链接的列表、树、标注格式(例如,可扩展标记语言)文件等。在操作1422,使用计算参数数据结构来配置车辆绑定DNN。
图15是示出根据实施例的用于在自主车辆沿着道路移动时实时测量道路的竖直轮廓的方法1500的示例的流程图。由诸如上面或下面描述的计算硬件(例如,处理电路)执行方法1500的操作。
在操作1501,捕获相机视场中的道路的相同部分的图像帧序列(例如,第一图像帧A、第二图像帧B、和第三图像帧C)。在操作1502,将第一图像帧A中的道路的图像点与第二图像帧B中的道路的对应图像点进行匹配。同样地,在操作1502,将第二图像帧B中的道路的图像点与第三图像帧C中的道路的对应图像点进行匹配。
在操作1503,计算靠近的图像对的单应性。在操作1503中,计算第一单应性HAB,其将第一图像帧A变换为第二图像帧B。可以根据第一图像帧A中道路的匹配图像点和第二图像B中道路的对应一组图像点来计算第一单应性HAB。还可以根据第二图像帧B中道路的匹配图像点和第三图像帧C中道路的对应图像点来计算第二单应性HBC,其将道路的第二图像帧B变换到第三图像帧C。
在操作1504,可以例如通过矩阵乘法将第一单应性HAB和第二单应性HBC链接起来。通过使用链接的单应性作为初始估计(例如,猜测),可以在操作1505计算第三单应性HAC,该HAC将道路的第一图像转换为道路的第三图像。可以在操作1506分别处理从第一图像帧A到第二图像帧B和第三图像帧C的残余流,以使用第三单应性HAC计算道路中的竖直轮廓。
图16是示出了根据实施例的用于处理图像序列上的残余流以测量道路的竖直轮廓的示例途径、方法1600的流程图。由诸如上面或下面描述的计算硬件(例如,处理电路)执行方法1600的操作。
在操作1601,最初将图像帧变形为第二图像帧以产生变形的图像。在本上下文中,术语“变形”是指从图像空间到图像空间的变换。以下讨论假定道路可被建模为平坦表面。因此,道路的成像点将根据单应性在图像空间中移动。变形可以基于车辆的测得的运动(例如,基于速度计标记、惯性传感器等)。
例如,对于具有特定焦距(例如,以像素定义)的在已知高度处的给定相机,以及在帧的各个捕获之间发生的已知车辆运动,可以计算点在两个图像帧之间的道路平面的图像上的运动的预测。针对道路点的运动使用几乎平坦的表面的模型,通过计算使第二图像朝着第一图像变形。以下MatlabTM代码是在操作1601执行初始变形的示例实现方式:
在此示例中,dZ是车辆的前向运动,H是相机的海拔高度,f是相机的焦距。项p0=(x0;y0)是道路结构的消失点。
在示例中,可以使用在将系统安装在车辆中期间获得的初始校准值,其中x0是车辆的前进方向,而y0是车辆在水平表面上时的水平线。
变量S是与在距相机不同的车辆距离Z处捕获的两个图像帧之间的图像坐标相关的总比例因子。在本上下文中,术语“相对比例变化”指的是图像坐标中的总比例变化,其取决于到相机的距离Z。
在示例中,初始变形操作1601基于通过车辆运动补偿因子向第一图像旋转来变换第二图像。可以基于旋转估计或偏航(yaw)、俯仰(pitch)和侧倾的测量来实现车辆运动补偿。可以由惯性传感器(例如,被配置为感测车辆的偏航、俯仰和侧倾的三轴加速度计)提供这些旋转估计或测量。惯性传感器可以集成在相机中,也可以安装在车辆上或车辆中的其他位置。可以替代地或另外地从一个或多个先前图像帧计算获得旋转估计。
在1601处的初始变形还可以包括针对第一图像和第二图像之间的相对比例变化的调整。可以将相对比例变化调整与旋转变换组合成单个变形操作,其中仅执行一个双线性插值。
在示例中,如果仅涉及俯仰和偏航旋转,则可以通过图像偏移来近似这些旋转。例如,根据以下等式,偏航可以近似为δθ个像素的水平图像偏移:
δΘ=δt×yawRate
在1601处的初始变形操作之后,道路上的特征的视运动(在本文中称为残余流),被局部地近似为图像补丁从原始图像到变形图像的均匀平移。残余流不同于原始图像和未变形图像之间基于实际车辆运动的差异,其中补丁的运动还涉及非均匀的比例变化。
在示例中,代替选择将总是给出向诸如车道标志和阴影之类的强特征的偏置的特征点,可在操作1607中使用固定的点网格来进行跟踪。因此,在1603,可以从梯形区域中选择点的网格,该梯形区域粗略地绘图表示(map)多达图像中向前的定义距离(例如,15米),并且具有大约一个车道(例如,2-3米)的宽度。这些点可以以定义的间隔(例如,在水平方向上每20个像素和在垂直方向上每10个像素)分隔开。可以使用具有类似效果的其他选择方案。例如,可以根据特定分布随机选择点。在示例中,使用了位于表面(例如,道路)上的十一个点的三条线。这些线位于车辆的中心,距中心线的每一侧各两米。
在操作1605,在原始图像中的每个点周围定位补丁。例如,补丁可以在围绕补丁中心点的每个方向上具有定义的形状和大小。例如,补丁可以是多个像素的正方形。在示例中,诸如椭圆形、矩形、梯形等其他形状,可被认为是补丁。针对变形的图像计算归一化相关(例如,使用MatlabTM函数normxcorr2),其中补丁中心在搜索区域中偏移。在实际使用中,可能有偏航传感器但没有俯仰传感器。因此,可以在x方向而不是y方向上使用更紧密的搜索区域。作为示例,可以使用在x方向上的(2×4+1)个像素和在y方向上的(2×10+1)个像素的搜索区域。
在示例中,确定产生最大相关性得分的偏移,并且随后以子像素分辨率(例如,0.1像素)围绕最佳得分位置进行细化搜索。与将最大得分的周围的整数分数拟合到抛物线表面或样条曲线并且使用最大得分周围的这些整数得分来计算子像素匹配相比,该细化步骤可以提供更好的结果。
通过选择得分高于定义的阈值(例如,T=0.7)的那些点,可以在搜索阶段滤除无效的轨道,留下作为在1607进行的跟踪操作的结果的跟踪的点1609。在相反方向上从变形图像到原始图像的逆跟踪给出相似的值。
在操作1611,使用诸如随机样本一致性(RANdom SAmple Consensus,RANSAC)之类的合适技术,将作为跟踪操作1607的结果的跟踪点1609拟合为单应性。随机选择一组点(例如,4个点)并用于计算单应性。然后,使用单应性来变换点1609,并且对比定义的阈值更近的一组点进行计数。重复多次随机选择一组点并计算比阈值更近的点的数目,并保留给出最高计数的四个点。
在1613,例如,使用四个最佳点来再次变换这些点和比(可能不同的)定义的阈值更近的所有点(内部)以使用最小二乘技术来计算单应性。不接近阈值的其余点被视为离群点(outlier)。
在该过程的此阶段,内围点(inlier)的数目及其在变形图像中的扩散对于成功找到道路平面模型是有益的。通常有超过50%的内围点和良好的拟合。然后可以在操作1601使用单应性法来校正初始对齐变形。可以在操作1601通过将校正集成到初始变形中来完成对初始对齐变形的校正,或者连续地进行两个变形。前者是有利的,因为它仅需要一个插值步骤,并且可以可选地通过两个单应性矩阵的矩阵乘法来执行。
在示例中,将预变形之后的鲁棒跟踪应用于计算单应性。这可以用于导出自我运动和平面估计以调整先前的平面估计。将自我运动模型和经调整的平面模型相结合以获得单应性。在示例中,自我运动可以由自我运动传感器和处理引擎来提供。这种类型的引擎使用本质矩阵对道路上的点和道路上方的点进行鲁棒的跟踪。它还结合了任何惯性传感器和可用速度计信息。由地平面引擎来提供地平面信息。该引擎跟踪道路上的点(在预变形之后),然后使用计算出的自我运动来得出每个点的深度,从而产生这些点的3D坐标。此后,通过算法将平坦表面拟合到3D点。在示例中,可以使用默认平面,例如从车辆中的相机位置的初始校准得出的平面。自我运动和平坦表面相结合以提供单应性。
在示例中,可以使用道路表面的参数模型。例如,可以通过通信地耦合的行驶路径几何结构或对象感测子系统来提供3D样条曲线模型。作为一个这种子系统的示例,由英特尔(Intel)公司的子公司移动眼(Mobileye)制造的道路体验管理系统TM(Road ExperienceManagementTM,REMTM)引擎可以以3D样条曲线的形式提供道路特征的表示。可以在美国专利第9,665,100号和国际专利公布申请第WO 2018/200522A1号中找到REM的其他详细信息,上述两个申请的全部内容通过引用合并于此。例如,可以将车道标志表示为3D样条曲线。子系统将3D样条曲线特征表示与图像对齐。可以将3D样条曲线特征表示投影回道路的捕获图像上以进行进一步处理。
3D样条曲线中的每个点都有3D坐标。根据示例,可以使用该数据的一种方式是通过沿着捕获图像的行内插和外推与3D样条曲线相关联的3D位置。向侧边外推可以是零阶保持(即,恒定的)、一阶保持(例如,基于两个样条曲线的线性扩展)等。在示例中,内插可以随着某些样条曲线到位于图片本身外部的虚拟图像坐标的已知扩展发生。
内插和外推可以为图像下部的所有点产生3D坐标。这些点可以在光滑的3D表面上。转而,该表面可以用于使先前的图像向当前图像变形(反之亦然)。可以在训练阶段和推断阶段中都执行该变形。
图17是示出根据实施例的用于车辆控制的水坑检测和响应决策的方法1700的示例的流程图。由诸如上面或以下描述的计算硬件(例如,处理电路)执行方法1700的操作。
在操作1702,由一个或多个相机捕获图像序列。在操作1704,接收或测量自我运动和参考平面信息。如上所述,可以从惯性传感器中提供自我运动信息,还可能结合来自车辆速度计的数据。地(例如,参考)平面信息可以基于相机的固定高度,并且可以被存储为定义的恒定值,作为配置或校准参数之一。
在操作1706,将图像与实际运动测量一起处理以确定图像之间的残余流。残余流表示从以下项之间的比较中检测到的差异:(a)由于车辆的实际运动而在图像序列之间产生的道路表面外观的预测变化,和(b)所捕获的序列中的图像之间的实际差异。这些差异可被进一步解释为竖直轮廓,包括诸如凸起(凸点)和凹陷(低洼部分或孔洞)之类的东西。在操作1708,可以使用上述技术中的任何技术或另一2合适的基于图像处理的技术来基于处理后的图像来通过计算确定道路的竖直轮廓。
这些技术使用伽马或另一形式的结构来确定竖直轮廓。在示例中,可以从残余流确定该结构。在示例中,诸如上面关于图4所描述的神经网络可以直接确定该结构。确定伽马后,根据伽马使图像变形以确定残余流。尽管可以使用各种光流技术,但也存在替代选项;使用仅使用两个或更多个帧之间的摄影测量损失进行训练的第二神经网络。当面对像水坑这样的反射表面时,第一神经网络将产生几乎平坦的伽马,因为它忽略了水坑中的移动反射。第二神经网络(经过训练可以绘制摄影测量损失)针对水坑在道路上产生一个大孔洞。比较两个输出给出水坑的标准。
效率是在通过计算伽马然后计算残余流比较两个神经网络的输出(直接在输入图像上运行以分别产生伽马和摄影测量损失)时获得的优势。执行伽马变形可能在计算上昂贵,并且还可能引入一些顺序约束,这可能会削弱并行处理的能力。因为第一和第二神经网络可能包括若干相同的层,所以非常有效的实现方式可以将两个网络结合起来,以训练具有两个输出通道的单个神经网络:一个的光度量仅是伽马图;并且第二个具有结合的光度量和几何神经网络。可以通过比较两个通道中的伽马来检测诸如水坑之类的反射表面。在示例中,两个神经网络共享网络的多个部分,在其他情况下则进行拆分。例如,第一和第二神经网络可以共享相同的结构,直到出现瓶颈,然后才分叉。
在示例中,第一和第二神经网络都被训练以输出结构(例如,伽马或Z)图,但是每一者是以不同的损失函数进行训练的。在示例中,损失函数的差异是两种不同类型的损失的权重的差异。在示例中,损失是光度、几何结构、EM、或未来图像损失中的一个或多个。将两个输出组合可用于检测移动的对象、反射物、或透明物。
实际上,这是使用神经网络检测反射表面或镜面的一般方法。可以将其应用于如下神经网络,该神经网络被训练以确定Z或然后检测车辆或建筑物侧面(例如窗户)上的反射表面。该技术的一个有趣用途是检测安装在盲区交叉口处的镜子。一旦检测到镜子表面,就可以对其进行分析以检测反射的图像中的车辆和行人,使得车辆视觉系统能够使用镜子来避免事故。例如,如果在交叉口的镜子中检测到行人或车辆,则本车辆可以等待直到该车辆或行人出现在相机的视图中,或者以其他方式修改其导航动作。为检测在移动对象上的反射,可以使用主相机和拐角相机实现移动的立体布置。这里,可以训练神经网络以使用摄影测量约束并随着时间使用立体对来从立体图像推断深度,以添加几何约束。
由于实际运动而导致的图像的预测变化与实际变化之间的差异可以进一步表示移动的对象(例如,其他车辆、行人、自行车)、移动的阴影和反射。因此,在示例中,在操作1710中,基于竖直轮廓信息和附加的水坑检测标准,通过计算确定一个或多个水坑的存在。方法1800提供了操作1710的示例。
在操作1712,确定当前情境场景。当前情境场景表示当前道路状况,车辆运动、周围环境。在示例中,可以从以下各项中任何一项或多项来获得情境场景:从本车上的传感器获得的数据,从地图中获得的道路模型及其周围环境,从远程服务器、从附近目标车辆或智能基础设施对象传送到本车的数据。方法1900提供操作1712的示例。
在操作1714,基于当前情境场景评估可用的驾驶响应解决方案。该示例中的驾驶响应解决方案特定于对检测到存在水坑做出响应。方法2000提供操作1714的示例。在操作1716,基于对各种驾驶响应选项的评估来选择驾驶响应解决方案。明显地,驾驶响应解决方案可以放弃采取任何回避或其他行动。
图18是根据实施例的示出用于基于竖直轮廓信息和另外的水坑检测标准来通过计算确定一个或多个水坑的存在的方法1800的示例的流程图。由诸如上面或下面描述的计算硬件(例如,处理电路)执行方法1800的操作。
在操作1802,对照深度标准评估可以以图像的格式表示的逐点竖直轮廓数据(例如,具有表示道路表面高度的值的像素)。例如,道路上表现为深洞(例如,超过定义的最小深度阈值,超过与相邻点的定义的最大高度变化等)的点(例如,像素)可以被标注或意其他方式与属于水坑的一组点中的可能成员的标记相关联。例如,深度标准阈值可能在50cm到1.5m的量级或甚至更大。
在操作1804,对照几何标准来评估给定附近区域中达到或超过深度阈值的点的区域。在示例中,几何标准定义潜在的水坑区域的空间特征。例如,可以考虑诸如区域大小、区域形状以及达到或超过该区域中的深度标准的点的连续性之类的特征。例如,大小或形状标准可以针对被认为是潜在的水坑的区域指定最小表面积或区域的最小长度或宽度维数。连续性标准可以指定最小连续性程度(例如,区域中的点的邻接、或满足深度标准的相邻点之间的最大距离)。
在操作1806,对照清晰度标准来评估潜在的水坑区域的边界清晰度。清晰度评估可操作来将倾向于具有清晰边界的水坑与倾向于具有柔和边界的移动阴影(也是图像分析操作中残余流的原因)区分开来。作为清晰度标准的示例,可以应用两个因素:(1)将被应用于边界附近的可疑水坑区域内部的点的针对负残余流的最小阈值(或道路表面凹陷深度),以及(2)将被应用于可疑水坑区域边界之外的点的残余流的的最大限度(或与参考道路平面对齐的道路表面平整度)。
在操作1808,基于在操作1802、1804和1806处达到或未达到各种标准,生成关于水坑确定的指示。
图19是根据实施例的示出用于通过计算确定自主车辆的当前情境场景的方法1900的示例的流程图。由诸如上面或下面描述的计算硬件(例如,处理电路)执行方法1900的操作。
在操作1902,评估车速。例如,可以从速度计或车辆控制系统获得该评估。在操作1904,评估道路表面和道路状况。这些评估可以包括确定牵引的质量或道路表面的打滑程度。例如,道路类型可以选自浇筑的路面、石头、污垢、砾石等。可以基于制图数据、测得的车辆性能(例如,与转向角和速度有关的车轮滑移和侧向运动),或基于这些因素的某种组合。可以从各种类别中,例如,干燥、潮湿、下雪、冰冷、多尘、落叶或其他杂物覆盖等,确定道路状况。可以基于天气报告数据、测得的车辆性能、或这些因素的组合来估计道路状况。可以从自主车辆控制系统的另一引擎获得1904处的评估。作为确定合适的驾驶响应解决方案的一部分,在1902和1904处的车辆速度和道路质量以及状况评估可被用于通过计算确定操纵限制。
在示例中,操纵限制可以包括限制的两个或更多个子类别。限制的这种子类别可以包括,例如,可能与急速或强力操纵(与其他子类别中的操纵相比)相关联的安全性操纵限制,以及可能与温和或更平缓的操纵相关联的舒适感操纵限制,温和或更平缓的操纵通常允许车辆中的乘客以及可能向道路的其他使用者和/或车辆的环境中的其他人(或动物)提供更高水平的舒适感。
在操作1906,评估水坑附近的任何行人的存在和位置。在当前情境中,行人包括车辆外的人,例如,行走的人、骑自行车的人、坐在轮椅或手推车上的人、在靠近路边坐着的人等。此行人评估可能基于对象辨识引擎提供的信息,该对象辨识引擎是自主车辆控制系统的一部分,并配置为检测人。操作1906可以进一步评估任何检测到的行人是否在检测到的水坑附近(例如,在“飞溅范围内”)。行人评估可用于通过计算确定在自主车辆的控制中采取规避行动以避免飞溅行人的优先等级。在示例中,飞溅范围可以是预定义的,例如距水坑的中心或边缘一定距离。在示例中,可以例如基于水坑的大小、车辆的速度等来估计飞溅范围。
在示例中,可以评估其他车辆(例如,包括自行车和摩托车)的存在和位置。飞溅范围评估可以用于确定迎面驶来的车辆(从任何方向)是否将以可能阻碍该迎面驶来的车辆的可见性的方式进入本车辆的飞溅范围。类似地,飞溅范围评估可以用于确定主车辆是否将以可能阻碍该主车辆的可见性的方式进入迎面驶来的车辆的飞溅范围。飞溅范围评估可以利用本车辆或迎面驶来的车辆的各种特性来评估飞溅范围及其对所涉及车辆的影响。车辆检测和评估可以用于通过计算确定在自主车辆的控制中采取规避行动的优先等级,以避免飞溅迎面而来的车辆或避免被迎面而来的车辆飞溅。
在操作1908,相对于道路边界评估检测到的水坑的位置。类似地,在操作1910,相对于道路上的任何车道标志来评估检测到的水坑的位置。在操作1908和1910处的评估可用于规避动作确定中,以决定是否可驾驶自主车辆以及在何处驾驶该自主车辆以避免水坑或减少或最小化任何飞溅。
在操作1912,对附近车辆(例如,与自主车辆在相同方向上行驶的那些车辆)的定位和移动特性进行评估。
在操作1914,对任何迎面而来的车流的存在和移动特性进行评估。附近或迎面而来的车流的移动特性可以包括诸如纵向距离、侧向距离(例如,当前车道位置)、靠近速度、预测的移动变化(例如,车道变化、速度变化、转弯)之类的因素。可从自主车辆的交通感测/检测或控制系统获得操作1912和1914处的评估。这些对附近和即将来临的车辆交通的评估可用于确定规避行为确定中来可能地限制自主车辆避开水坑以保持安全。
图20是根据实施例的示出用于对可用驾驶响应解决方案进行计算评估的方法2000的示例的流程图,该可用驾驶响应解决方案可以被选择或可以不被选择来响应对水坑(或其他反射表面)的检测。使用诸如上面或下面描述的计算硬件(例如,处理电路)来执行该方法的操作。
在操作2002,评估响应于检测到水坑而采取行动的需要。采取行动的需要取决于水坑是否在自主车辆的路线上,尤其是是否在至少一个车轮的预计路线上。采取行动的需要可能还取决于水坑附近是否存在任何行人。在某些实现方式中,采取行动的需要还可能取决于车辆驾驶员的偏好。
例如,在示例实施例中,响应于水坑检测,可能存在对驾驶响应的不同程度的需要。下表说明了几种情形的示例,这些情形要求对水坑响应的不同程度的需要或偏好。呈现各种情形以及对应的风险得分增量值。风险得分增量表示每种情形对计算的风险评估的对应贡献。
在这些示例中,可以假定主要在道路边缘的水坑(例如,具有符合道路边界的细长形状)是由道路斜坡的径流引起的,而不主要是因为坑洼。这种类型的水坑可能飞溅车辆本身或附近的行人。远离道路的边缘的水坑可能飞溅车辆或行人,但也可能是由于坑洼所致,这可能会造成其他伤害,例如,轮胎、车轮、悬架、底盘、或车辆的其他一部分。如果车辆正在高速行驶,大的坑洼也可能使车辆偏离其行程。跨过道路主要部分的很大的水坑可能是由于道路表面积水的低洼处所致。这种类型的水坑可能掩盖严重的道路危害,例如,冲刷。覆盖道路表面的大部分的很大的水坑还可能具有导致车辆严重失控的深度,例如,由于滑水,或者超过了车辆的引擎进气口高度的极深的深度。
行人的存在可以被视为以高速撞击水坑的加剧因素。在某些情况下,行人的存在不会带来安全风险—反而是,人们偏好于按照社会规范礼貌地操作自主车辆。因此,与行人相关联的风险增量大于与污染车辆相关联的风险增量,但小于与撞击潜在坑洼相关联的风险。
上表的最后一行显示了减轻因素,例如,水坑的大小确定小于定义的阈值。例如,如果水坑的维数没有超过10cm,则可以认为该水坑太小而不会导致明显的飞溅或与坑洼相关联的伤害。
方法2000的操作2004-2012涉及对各种类型的驾驶响应的评估。每次评估可以基于各种标准,其中考虑了诸如以下因素:
1.行动减低安全风险的有效性;
2.行动提高自主车辆的驾驶礼仪的有效性;
3.行动导致或增加安全风险的潜在可能性;
4.行动导致或增加车辆乘客不适感的潜在可能性;或
5.行动导致不礼貌驾驶行为的潜在可能性。
考虑到当前情境评估,可以通过向每个标准分配数值得分来通过计算对每个驾驶响应的评估处理。因此,在2004,根据各种标准对速度降低进行了评估。例如,速度降低可以减少或防止飞溅,并且可以减轻由撞击潜在坑洼带来的任何伤害;但是,速度降低可能会使车辆的乘客感到烦恼,并且,如果附近有车辆紧跟着自主车辆,速度降低可能会导致附近的车辆也需要降低其速度,从而增加发生碰撞的风险,并可能使附近车辆的驾驶员或乘客感到烦恼。
在操作2006,车道内换档被评估为潜在的驾驶响应。在操作2008,车道改变被评估为潜在的驾驶响应。与车道改变相比,车道内换挡对车辆乘客和附近的车辆来说是不那么扰人的选项,尽管基于水坑的位置和大小以及车辆的速度这也可能不太有效。
在操作2010,评估瞬时转向到路肩上。在操作2012,评估瞬时转向进入对向行车道。路肩和对向行车道转向代表较高风险的驾驶响应,当基于当前情境场景确定其他驾驶响应无效或风险较高时,可能需要使用这种响应。
例如,可以考虑情境评估来通过计算评价这些标准中的每一标准。作为在操作2004-2012中应用标准的一部分考虑到情境评估的结果,根据普遍情况,某些驾驶响应可能更可取,或更不可取。因此,例如,任何附近车辆的存在和到任何附近车辆的(一个或多个)相对距离可能会影响选择降低速度、车道改变、车道换挡、或转向、或这些驾驶响应的组合来对检测到水坑做出响应的程度。在示例中,转向可以是车道内转向,由此车辆不改变车道,而是在车道内调适自身以避免水坑。在示例中,仅当存在行人时才执行车道内转向或速度降低。因此,如果没有行人,则将不会执行该操纵。例如,如果本车辆检测到水坑并检测到行人,则本车辆可以减速,从而比未检测到行人的情况更慢地通过水坑。此外,如果检测到水坑,则本车辆可以调整其路径远离行人,并且如果没有检测到水坑,则保持直行。另外,如果有行人在人行道上并且存在水坑,则本车辆可以减速,但是如果有行人在人行道上并且不存在水坑,则本车辆将不会减速(例如,或者将更少地减速)。
图21示出根据实施例的与自主车辆控制系统一起使用的用于对道路进行轮廓分析的基于相机的车载系统。如图所示,该系统包括多个子系统、组件、电路、模块、或引擎,为了简洁和一致性起见,将它们称为引擎,但是将理解,这些术语可以互换使用。可以在硬件中实现引擎,也可以在软件或固件的控制下在硬件中实现引擎。这样一来,引擎是专门用于执行指定操作的有形实体,并以某种方式构造。
在示例中,可以以指定的方式将电路布置(例如,内部地或相对于诸如其他电路之类的外部实体)为引擎。在示例中,一个或多个硬件处理器的全部或一部分可以由固件或软件(例如,指令、应用部分、或应用)配置为操作来执行指定操作的引擎。在示例中,软件可以驻留在有形机器可读存储介质上。在示例中,软件在由引擎的底层硬件执行时使硬件执行指定的操作。因此,引擎被物理地构造、或被专门配置(例如,硬接线)、或被临时配置(例如,被编程)为以指定的方式操作或执行本文所述的任何操作的一部分或全部。
考虑其中引擎被临时配置的示例,每个引擎都不需要在任一时刻被实例化。例如,在引擎包括使用软件配置的通用硬件处理器核心的情况下;通用硬件处理器核心可以在不同时间被配置为各自不同的引擎。软件可以相应地配置硬件处理器核心,例如,以在一个时间实例处作为特定引擎,并在不同的时间实例处作为不同的引擎。
如所描绘的,该系统包括安装在车辆中或车辆上的相机或图像传感器2112。每个图像传感器2112对视场成像,以提供由图像处理器2130读取的图像帧2115。在示例中,可以在车辆中安装不止一个相机2112。例如,系统可以具有指向不同方向的多个相机2112。系统还可以具有相对于车辆指向相同或相似方向但安装在不同位置的多个相机2112。在示例中,系统可以具有多个相机,这些相机具有部分或完全重叠的视场(例如,如下面关于图22和图23所描述的)。在示例中,两个并排的相机可以以立体的方式操作。尽管在此讨论了单相机系统,但是也可以使用多相机系统,其中一些或所有相关图像和帧可以由不同的相机捕获,或者可以由从多个相机捕获的图像的合成来创建。在本上下文中,实时操作以不可察觉的或名义上的处理延迟进行操作,从而以与扫描或捕获视场的速率一致的速率检测整个视场中的对象。
图像处理器2130可用于同时或并行地处理图像帧2115,以服务于多个驾驶员辅助系统或应用。图像处理器2130可用于处理图像帧2115,以检测和辨识相机2112的前向视场中的图像或图像的部分。可以使用带有板载软件和/或存储设备2113中的软件控制算法的专用硬件电路(未示出)来实现驾驶员辅助系统。图像传感器2112可以是单色的、灰度的,或者图像传感器2112可以是颜色敏感的。举例来说,图像帧2115被用于为以下各项服务:用于道路的竖直轮廓或距路面的偏差的特征检测引擎2120、交通标志辨识(TSR)引擎2121、前向碰撞警告(FCW)引擎2122、和竖直轮廓检测引擎2123。在示例中,图像帧2115被在不同的驾驶员辅助应用之间划分,并且在其他情况下,图像帧2115可以在不同的驾驶员辅助应用之间共享。
在示例中,该系统被用于准确地估计道路表面的平面(或双二次)模型,并计算与平面(或双二次)道路表面模型的小偏离以检测或量化各种道路表面特征104。在本上下文中,术语“道路表面模型”指的是道路表面的平面或双二次模型。术语“竖直轮廓”或“竖直偏差”指的是沿垂直于道路表面的轴与道路表面模型的偏差。
在示例中,该系统被用于使用安装在本车辆中的相机2112准确地检测并对道路表面(例如,形状)形状(例如,竖直轮廓)建模。使用本文提供的系统和方法,可以测量诸如颠簸或孔洞、减速带、路缘、或井盖之类的表面特征,并将其建模为距道路表面(例如,平面)的竖直偏差,该竖直偏差具有亚像素精度(例如,1-2厘米的量级)。这些技术可以类似地应用于前向、侧向、或后向相机2112。伽马图可用于确定车辆前方或侧面和后方的可驾驶区域。伽马图可单独用于确定表面坡度过于陡峭而无法行驶的地方,也可如美国专利公开第2018/0101177号所述将其与基于灰度或彩色图像的语义自由空间结合使用,该美国专利公开的全部内容通过引用合并于此。道路平面的伽马图或高度图可用于区分尖锐的竖直边缘路缘石,平滑倾斜的路缘石、或平缓的路肩(例如,道路下降处)。然后,可以控制本车辆与尖锐的路缘石或边缘下降比与平滑倾斜的路缘石保持更大的距离。
在示例中,该系统可以进一步包括车辆控制处理器2140,该车辆控制处理器2140实施一个或多个车辆控制引擎,以向车辆的机电致动器系统生成扼制、制动、转向、或变速器选择命令,来实现自主或半自主驾驶操作。车辆控制处理器2140可以接收由图像处理器2130提供的与发动机2120-2123产生的各种机器视觉评估有关的各种输出。
图22示出了根据实施例的车辆上的多相机阵列。如图所示,相机2212A-2212F安置在车辆周围以提供视场(例如,如下所述的那些)。
图23示出了根据实施例的可由多相机阵列捕获的视场的示例。示出了多个重叠的视场100A-100F。这里,道路表面是这些视图共有的。
图24是示出根据实施例的竖直轮廓检测引擎2423的示例的框图。竖直轮廓检测引擎2423包括预处理器引擎2422、基于机器学习(ML)的轮廓引擎2424、和输出提取引擎2434。预处理器引擎2422被构造、编程、或以其他方式配置为接收一组原始输入数据,并处理该组原始输入数据以产生经预处理的一组输入数据,经预处理的该组输入数据将被传递到基于ML的轮廓引擎2424进行进一步处理,其结果是指示对道路表面的竖直轮廓的测量的输出。
可以从车辆控制系统的组件提供该组原始输入数据。例如,自我运动引擎2402、地平面引擎2406、或数据库2412可以各自提供原始数据项。要注意的是,在本上下文中,术语“原始数据”指的是预处理器引擎2422的输入侧上的信息。原始数据不限于直接从传感器(例如,一个或多个相机)提供的数据或者以其他方式而未经处理的数据。而是,原始数据可以通过其源或中间处理实体在某种程度上进行计算处理。
自我运动引擎2402被配置为提供描述传感器的实际运动的自我运动(EM)信息2404。EM信息2404可以基于由车辆的速度计或惯性传感器(例如,被配置为感测车辆218的偏航、俯仰和侧倾的三轴加速度计)获得的测量结果。惯性传感器可以集成在相机中,或者也可以安装在本车辆上或中的其他位置。
地平面引擎2406被配置为提供地平面(GP)信息2408。在示例中,地平面引擎2406可基于由自我运动引擎2402提供的俯仰和侧倾数据来确定GP信息2408、车辆悬架信息、或这些输入的某种组合。GP信息2408可以指示道路的平面法向量以及到该平面的距离。在示例中,地平面引擎2406可以基于3D扫描测量(例如,LiDAR)、立体成像、或其他(一种或多种)合适的技术来计算平面法向矢量和到平面的距离。在示例中,地平面引擎2406可以基于捕获的图像2416来计算GP信息2408,或者它可以是固定的默认GP。
数据库2412提供保存的数据项,例如相机高度信息2414和捕获的图像2416,其可以包括连续捕获的图像帧215的序列。捕获的图像2416可以包括当前的(最近捕获的))图像、上一图像、和再上一图像。
预处理器引擎2422输出一组预处理图像2430,该组预处理图像基于捕获的图像2416和其他原始数据输入项,例如EM 2404、GP信息2408或相机高度信息2414。另外,预处理器引擎2422输出图像格式的核点标记2428和图像格式的运动标记2426,以供基于ML的轮廓引擎2424进一步处理。
在示例中,道路结构2432是表示针对当前捕获图像的每个像素的道路平面高度与沿前向运动方向(沿z轴)距相机的距离之比的绘图。在示例中,伽马可以具有与一组预处理图像2430中的任一图像相同或相似的分辨率,或者可以具有不同(例如,降低的)分辨率。
在示例中,基于ML的轮廓引擎2424读取一组预处理图像2430、图像格式的核点标记2428、和图像格式的运动标记2426,并处理预处理器引擎的这些图像格式的输出2422以产生道路结构2432,道路结构2432是代表道路表面三维结构的图像格式的绘图。道路结构2428指示道路的竖直轮廓。它可以包括道路表面上各个点的高度信息,或者可以包括其他值,可以根据这些值从进一步的处理中通过计算确定高度信息。
在示例中,基于ML的轮廓引擎2424包括经过训练的深度神经网络(DNN),以计算道路的竖直轮廓。DNN基于计算参数2425在多个层上执行各种分级操作,计算参数2425包括特定于每一层的加权、偏置、或其他变量设置。基于DNN训练操作可以建立并且不定期地更新计算参数2425,该DNN训练操作可以例如由DNN训练系统2450离线或远程地执行。
例如,输出提取引擎2434被配置为使用相机高度信息2414和GP 2408来处理道路结构2432的伽马(γ)值,以产生代表距道路的平面的竖直高度的高度图2436。在示例中,输出提取引擎2434被配置为基于下式来从道路结构2432计算残余运动μ2438:
在示例中,DNN产生伽马值的按像素输出,其中伽马是竖直轮廓高度与沿前向运动方向(沿z轴)到相机的距离的计算比值。可以根据图像内对应位置的相应伽马值确定竖直轮廓高度。
在示例中,可以从高度H直接检测诸如人行道之类的道路边界特征。在示例中,可以通过检测相对均质的正残余流区域来检测道路边界特征,通过细长的线使得相对均质的正残余流区域与具有低残余流的区域区分开。这些线大致朝向延伸焦点(FOE)的方向或道路的方向(即车道标志消失点的方向)。
在示例中,可以类似地直接从高度H或作为具有正残余流的区域直接检测颠簸或障碍物,具有正残余流的区域至少部分地被具有低残余流的区域围绕。在示例中,另一方面,可将孔洞或凹陷检测为具有负残余流的区域,其至少部分地被具有低残余流的区域围绕。
在示例中,基于对图像中的水平表面(例如,可以从伽马图像或从所确定的道路边界内部的区域的位置来确定)的分析来检测水坑。可用于确定水坑的一些标准包括测试表面上是否存在具有指示深凹陷或孔洞的明显残留流的尖锐边缘。作为示例,在基于DNN的实现方式中,可以分析可疑水坑区域的边缘以寻找在伽马变形图像中静止的边缘特征。当仅使用摄影测量约束时(例如,在负方向上超过定义的阈值),可以将可疑的水坑区域识别为具有较大的负伽马值。
在示例中,获得了经预处理的(例如,变形的、对齐的、和稳定化的)图像。像可能已作为道路轮廓分析操作的一部分生成了这些经预处理的图,而不是专门为水坑检测生成的。这里,与必须重新预处理图像的系统相比,预处理图像的可用性促进了计算效率,并提升了特征检测的检测速度。
图25示出根据实施例的预处理器引擎的示例。如图所示,预处理器引擎2572包括参考帧引擎2502、单应性引擎2504、图像变形引擎2506、核点图像生成器引擎2508、和运动信息图像生成器引擎2510。
EM信息2554被作为输入提供给参考帧引擎2502和运动信息图像生成器引擎2510。在该示例中,EM信息2554包括旋转(R)信息2512和平移(T)信息2514,这些信息是从车辆中的运动感测设备提供或导出的。GP信息2558被提供给参考帧引擎2502。如图所示,GP信息2558包括道路平面的默认平面法向量指示符N 2516。
捕获的图像2566被提供给参考帧引擎2502、单应性引擎2504、和图像变形引擎2506。捕获的图像2566包括从视场中的道路的相同部分捕获的一系列图像帧2518(例如,第一图像帧A、第二图像帧B、和第三图像帧C)。在示例中,图像帧序列2518可具有少至两个图像帧、三个图像帧、或多于三个图像帧。
相机高度信息2564被提供给参考帧引擎2502和运动信息图像生成器引擎2510。在示例中,相机高度信息2564包括代表标称相机高度的固定值2520。在示例中,相机高度信息2564包括报告当前相机高度的动态指示符,该动态指示符考虑诸如车辆的悬架状态之类的变量。
在示例中,参考帧引擎2502被配置为基于EM信息2554,将来自GP信息2558的地平面标记调整为更新后的地平面表示。这在需要相对于稳定的参考平面的道路断面输出时可能是重要的。例如,根据下式来调整地平面的平面法向量:
N(t)=αF[N(t-1),R,T]+βNcurr+γNhist
其中N(t)表示更新后的平面法向量,具有方向和大小信息。例如,N(t)可以表示平面法向量N除以相机高度(即,距地平面的距离D,也称为camH)。在示例中,可以使用相同的α、β和δ系数分别更新N和D:
(Nnew;Dnew)=0:8_updatedR;T
(Nprev;Dprev)+0:1_(Ncurr;Dcur)+0:1_history(Ncurr;Dcurr)
单应性引擎2504被配置为计算成对的图像帧2518之间的单应性。在本上下文中,术语“单应性”指的是从投影空间到其自身的可逆变换,该变换将直线映射到直线。在计算机视觉领域,空间中同一平面的两个图像通过单应性(假设有针孔相机模型)相关。给定单应性可以通过计算被表示并处理为矩阵(利用阵列或其他合适的数据结构来实现)。
作为示例,由单应性引擎2504计算表示道路的第一图像帧A到道路的第二图像帧B的变换的第一单应性HAB。可以根据第一图像帧A中道路的匹配图像点和第二图像B中道路的图像点的对应集合来计算第一单应性HAB。
在示例中,可以基于自我运动和地平面信息将单应性H表示为:
其中R和T分别表示从EM 2554的旋转和平移(例如,从帧A到帧B),camH表示来自相机高度信息2564的相机高度,N表示来自GP 2558的平面法向量,K和K-1表示校准元素。
也可以由单应性引擎2504从第二图像帧B中的道路上的匹配图像点和第三图像帧C中的道路上的相应图像点计算第二单应性HBC,其表示道路的第二图像帧B到道路的第三图像帧C的变换。
单应性引擎2504可以进一步例如通过矩阵乘法来链接第一单应性HAB和第二单应性HBC。通过使用链接的单应性作为初始猜测,可以计算出第三单应性HAC,它表示道路的第一图像到道路的第三图像的变换。
在示例中,单应性引擎2504使用图像帧之间的自我运动来计算单应性。例如,第一图像帧A和第二图像帧B之间测得的旋转(表示为RAB)以及第一图像帧A和第二图像帧B之间的平移(TAB)分别与第二图像帧B和第三图像帧C之间的旋转和平移(表示为RBC和TBC)链接在一起。该自我运动链产生对第一图像帧A和第三图像帧C之间的旋转和平移(表示为RAC和TAC)的确定。单应性引擎2504使用自我运动RAB和TAB来更新平面法向量NBC,该平面法向量是在帧C的坐标系中使用帧B和C计算的平面法线。它表示第二和第三图像帧B和C共同的稳定参考平面。单应性引擎2504确定表示可用于与三个图像A、B和C的序列有关的所有单应性的稳定参考帧的更新平面法向量(例如,NBC)。接下来,单应性引擎2504基于旋转RAC、平移TAC、和平面法向NAC,组成针对第一图像帧A和第三帧C之间的图像帧的转变的单应性HAC。
在示例中,将预变形之后的鲁棒跟踪应用于计算单应性。这用于导出自我运动和平面估计以调整先前的平面估计。自我运动和经调整的平面模型相结合以获得单应性。作为示例,可以由自我运动传感器和处理引擎提供自我运动。这种类型的引擎使用基本矩阵对道路上的点和道路上方的点进行鲁棒性跟踪。它还结合了任何可用的惯性传感器和速度计信息。由地平面引擎提供地平面信息。该引擎(在预变形之后)跟踪道路上的点,然后使用计算出的自我运动得出每个点的深度,以产生这些点的3D坐标。此后,通过算法将平面拟合到3D点。自我运动和平面相结合以提供单应性。
在示例中,可以实现道路表面的各个参数模型。例如,可以通过通信地耦合的行驶路径几何结构或对象感测子系统来提供3D样条曲线模型。作为一个这种子系统的示例,由Intel公司的子公司Mobileye制造的道路体验管理(Road Experience ManagementTM,REM)引擎可以以3D样条曲线的形式提供道路特征的表示。例如,车道标志可被表示为3D样条曲线。子系统将3D样条曲线特征表示与图像对齐。3D样条曲线特征表示可被投影回捕获的道路的图像上以进行进一步处理。
3D样条曲线的每个点都有3D坐标。在示例中,该数据可以用于沿着捕获图像的行内插和外推与3D样条曲线相关联的3D位置。边的外推可以是零阶保持(即,常数)、一阶保持(例如,基于两个样条曲线的线性扩展)等。在示例中,内插可以与某些样条曲线到位于图片本身之外的虚拟图像坐标的已知扩展一起发生。
内插和外推可以为图像下部中的所有点产生3D坐标。这些点可以在光滑的3D表面上。继而,该表面可以用于使先前的图像向当前图像变形(反之亦然)。
在可以访问多个重叠视图的示例中(例如,如参考图22和23所描述的),可以由单应性引擎2504使用视场的组合来计算单应性。例如,可以从对齐平坦道路表面的重叠区域的左前视场2300A到前中心视场2300B(在时间t2)获得单应性,该单应性可以用于使左前视场2300C的图像变形到前中心视场2300B的图像。另外,可以在时间t1处的前中心视场2300B的图像与时间t2处的前中心视场2300B的图像之间计算单应性(如在单眼情况下)。此外,可以从左前视场2300A的图像(在时间t1处)到前中心视场2300B的图像(也在时间t1处)计算单应性。使用该单应性,左前视场2300A的图像(在时间t1处)可以被链式变形(chain-warped)以与前中心视场2300B的图像(在时间t2处)对齐。
在示例中,左前视场2300A的图像(在时间t1处)和前中心视场2300B的图像(也在时间t1处)之间的单应性是从以下项得出的:用于前中心视场的图像2300A(在时间t1)和前中心视场的图像(在时间t2处)之间的单应性的平面法线、左前相机2212A和前向相机2212B的已知位置(外部校准)、以及每个相机的内部校准参数(例如,焦距和镜头失真)。
该技术可以与全局快门相机一起使用,但是在滚动快门相机的情况下或在非同步相机的情况下可能会引入误差。在后一种情况下,可以使用重叠道路表面之间的3D点和跟踪点并计算单应性来从图像中得出两个相机的相对位置。由于用于对齐的单应性通常使用一致的地平面,因此可以将从跟踪得出的单应性分解以给出相对运动,并且可以使用该运动和一致的接地平面法线来构造新的单应性。
图像变形引擎2506被配置为对三个图像帧2518中的两个执行变形操作。例如,第一图像帧A被变形到第三图像帧C,第二图像帧B被变形到第三图像帧C。在该示例中,图像帧C可以表示当前图像,图像帧B表示前一图像,而图像帧A表示再前一图像。
核点图像生成器引擎2508被配置为以一个或多个图像的格式生成核点位置数据2578。核点是表示前向运动的方向的向量。在示例中,图像格式的核点位置数据2578包括一对图像,其中每个图像具有与图像帧A、B和C相同或相似的分辨率。表示核点位置数据的图像对中的第一图像包含“像素”,这些“像素”表示它们沿x轴距核点的相应距离。表示核点位置数据的图像对中的第二个图像包含“像素”,这些“像素”表示它们沿y轴距核点的相应距离。
运动信息图像生成器引擎2510被配置为产生表示车辆的测量运动的图像格式的运动标记2576。例如,图像格式的运动标记2576可以具有与核点位置数据2578相同的维数。图像格式的运动标记2576的内容可以包括具有表示车辆运动的固定值的“像素”。在示例中,图像格式的运动标记2576中的车辆运动可以基于EM 2554。在示例中,图像格式的运动标记2576中的车辆运动还基于相机高度信息2564。在示例中,针对图像格式的数据结构2576中的图像的每个“像素”,将沿前向(z轴)方向的平移的当前量度与相机高度的比值(表示为Tz/D)提供为恒定值。
图26示出了根据实施例的用于利用相机进行车辆环境建模的方法2600的示例的流程图。在诸如上面或下面描述的计算硬件(例如,处理电路)中实现方法2600的操作。
在操作2605,获得表示道路表面的按时间排序的图像序列。这里,图像序列中的一个图像包括当前图像。
在操作2610,将数据集提供给ANN以产生场景的三维结构。在示例中,数据集包括图像序列的一部分—其中图像序列的该部分包括当前图像、捕获图像的传感器的运动、以及核点。在示例中,图像序列的该部分包括紧接当前图像之前的图像。在示例中,图像序列该一部分总共是三个图像。在示例中,图像序列的该部分包括当前图像之前的图像,这些图像被图像序列中的一个或多个图像隔开。
在示例中,将核点提供为具有与当前图像相同维数的梯度图像。这里,梯度图像中的像素的值表示当前图像中的像素距核点的距离。在示例中,基线为至少0.5m。在示例中,梯度图像的分辨率低于当前图像。在示例中,梯度图像仅表示距核点的水平距离。在示例中,第二梯度图像被提供给ANN以表示距核点的竖直距离。
在示例中,传感器的运动被提供为具有与当前图像相同维数的恒定值图像。在示例中,恒定值是传感器的前向运动与传感器距平面的高度的比值。
在示例中,场景的三维结构是伽马图像。这里,伽马图像包括具有伽马值的像素,该伽马值是点在平面上方的高度与距捕获当前图像的传感器的距离的比值,该平面表示道路表面。
在示例中,ANN是卷积神经网络(CNN)。在示例中,传感器和核点的运动在瓶颈层处被提供给CNN。
在示例中,使用无监督训练技术来训练ANN,其中通过测量未来图像的模型与未来图像之间的差异来确定误差。这里,未来图像的模型是通过对未来图像之前的图像进行伽马变形来产生的。在示例中,采用无监督训练技术来训练ANN,其中通过测量位置的预测伽马与该位置处的传感器运动之间的差异来确定误差,传感器运动包括垂直于平面的传感器的俯仰、偏航、侧倾或平移。在示例中,使用无监督训练技术来训练ANN,其中误差是通过在两个不同时间的两个图像之间的重叠片段的伽马之差来确定的。这里,对第一图像执行推断,并且重叠片段在第二图像中更靠近传感器。
在操作2615,使用场景的三维结构对道路表面建模。在示例中,对道路表面进行建模包括通过将场景的三维结构与第二ANN的输出进行比较来识别反射区域。这里,第二ANN被训练为接受图像序列该一部分并产生第二三维结构。与训练第一ANN相比,第二ANN的训练在图像序列的该部分中涉及更多的摄影测量损失。在示例中,将ANN和第二ANN实现为经训练以产生双通道输出的单个ANN。这里,第一通道是场景的三维结构,并且第二通道是由第二ANN产生的三维结构,该第二ANN在其训练中使用了更多的摄影测量损失。在示例中,对道路表面进行建模包括计算距道路表面特征的平面的垂直偏差。
在示例中,方法2600被扩展为包括使用三维结构调用第二ANN,以确定特征表示道路表面的环境内的移动对象还是不移动对象。在示例中,使用三维结构调用第二ANN包括向第二ANN提供以下项:前图像;使用三维结构变形的先前图像;和目标标识符。在示例中,目标标识符是图像,其中该图像的像素指示距目标的中心的距离。在示例中,目标标识符包括目标的大小。在示例中,目标标识符是与目标相对应的像素的掩码。
图27示出了示例机器2700的框图,可以在该机器上执行所讨论的任何一种或多种技术(例如方法)。如本文所述,示例可以包括机器2700中的逻辑或多个组件或机构,或可以由其操作。电路(例如,处理电路)是在机器2700的有形实体中实现的电路的集合,包括硬件(例如,简单电路、门、逻辑等)。电路成员资格可以随着时间推移是灵活的。电路包括可以在操作时单独或组合执行指定操作的成员。在示例中,电路的硬件可以被不变地设计为执行特定的操作(例如,硬连线)。在示例中,电路的硬件可以包括可变连接的物理组件(例如,执行单元、晶体管、简单电路等),包括经物理修改(例如,磁地、电地、不变质量粒子的可移动地布置等)来编码特定操作的指令的机器可读介质。在连接物理组件时,硬件组件的基础电性质会发生变化,例如从绝缘体变为导体,反之亦然。该指令使得嵌入式硬件(例如,执行单元或加载机构)能够通过可变连接在硬件中创建电路的成员,以在操作时执行特定操作的部分。因此,在示例中,机器可读介质元件是电路的一部分,或者在设备操作时通信地耦合到电路的其他组件。在示例中,任何物理组件可以在一个以上电路的一个以上成员中使用。例如,在操作中,执行单元可以在一个时间点在第一电路的第一电路单元中使用,并且可以在不同的时间被第一电路中的第二电路单元或第二电路中的第三电路单元重用。关于机器2700的这些组件的其他示例如下。
在示例中,机器2700可以作为独立设备操作,或者可以连接(例如,联网)到其他机器。在网络部署中,机器2700可以在服务器-客户端网络环境中以服务器机器、客户端机器或两者的资格运行。在示例中,机器2700可以在对等(P2P)(或其他分布式)网络环境中充当对等机器。机器2700可以是个人计算机(PC)、平板PC、机顶盒(STB)、个人数字助理(PDA)、移动电话、web家电、网络路由器、交换机或网桥、或能够执行指令(顺序的或其他方式)的任何机器,这些指令指定该机器要采取的动作。此外,虽然仅示出了单个机器,但是术语“机器”也应被理解为包括机器的任何集合,这些机器单独地或共同地执行一组(或多组)指令以执行本文所讨论的任何一个或多个方法,例如,云计算、软件即服务(SaaS)、其他计算机集群配置。
机器(例如,计算机系统)2700可以包括硬件处理器2702(例如,中央处理单元(CPU)、图形处理单元(GPU)、硬件处理器核心、或其任意组合),主存储器2704,静态存储器(例如,用于固件、微代码、基本输入输出(BIOS)、统一可扩展固件接口(UEFI)等的存储器或存储设备)2706,和大容量存储设备2708(例如,硬盘驱动器、磁带驱动器、闪存、或其他块设备),其中一些或全部可通过互链(例如,总线)相互通信2730。机器2700还可包括显示单元2710、字母数字输入设备2712(例如,键盘)、用户界面(UI)导航设备2714(例如,鼠标)。在示例中,显示单元2710、输入设备2712和UI导航设备2714可以是触摸屏显示器。机器2700可以另外包括存储设备(例如,驱动单元)2708、信号生成设备2718(例如,扬声器)、网络接口设备2720、以及一个或多个传感器2716,例如全球定位系统(GPS)传感器、罗盘、加速度计、或其他传感器。机器2700可以包括输出控制器2728,例如,串行(例如,通用串行总线(USB)、并行、或其他有线或无线(例如,红外(IR)、近场通信(NFC)等)连接以通信或控制一个或多个外围设备(例如,打印机、读卡器等)。
处理器2702、主存储器2704、静态存储器2706、或大容量存储设备2708的寄存器可以是机器可读介质2722、或包括机器可读介质2722,在机器可读介质2722上存储了一组或多组数据结构或指令2724(例如,软件),其中体现了本文描述的任何一种或多种技术或功能或由其来使用。指令2724还可以在由机器2700执行期间完全或至少部分地驻留在处理器2702、主存储器2704、静态存储器2706、或大容量存储设备2708的任何寄存器内。在示例中,硬件处理器2702、主存储器2704、静态存储器2706、或大容量存储器2708之一或其任何组合可以构成机器可读介质2722。虽然机器可读介质2722被示为单个介质,但是术语“机器可读介质”可以包括被配置为存储一个或多个指令2724的单个介质或多个介质(例如,集中式或分布式数据库、和/或所关联的缓存和服务器)。
术语“机器可读介质”可以包括能够存储、编码或携带由机器2700执行的指令并且使得机器2700执行本公开的任何一种或多种技术的任何介质,或者能够存储、编码或携带由此类指令使用或与之相关联的数据结构的任何介质。非限制性机器可读介质示例可以包括固态存储器、光介质、磁介质、和信号(例如,射频信号、其他基于光子的信号、声音信号等)。在示例中,非暂态机器可读介质包括具有多个粒子的机器可读介质,这些粒子具有不变(例如,静止)的质量,因此是物质的成分。因此,非暂态机器可读介质是不包括暂态传播信号的机器可读介质。非暂态机器可读介质的具体示例可以包括:非易失性存储器,例如半导体存储器设备(例如,电可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM))和闪存设备;磁盘,例如,内部硬盘和可移动磁盘;磁光盘;以及CD-ROM和DVD-ROM盘。
在示例中,存储以其他方式提供在机器可读介质2722上的信息可以代表指令2724,例如指令2724本身或可以从中导出指令2724的格式。可以从中导出指令2724的这种格式可以包括源代码、编码指令(例如,以压缩或加密形式)、封装指令(例如,分成多个包)等。可以通过处理电路将机器可读介质2722中代表指令2724的信息处理成指令以实现所讨论的任何操作。例如,从信息中导出指令2724(例如,由处理电路进行的处理)可以包括:编译(例如,从源代码、目标代码等)、解释、加载、组织(例如,动态或静态链接)、编码、解码、加密、解密、封装、解封装、或以其他方式将信息处理成指令2724。
在示例中,指令2724的导出可以包括信息的组装、编译或解释(例如,通过处理电路)以根据由机器可读介质2722提供的某种中间格式或预处理格式创建指令2724。当信息被提供在多个部分中时,该信息可以被组合、拆包和修改以创建指令2724。例如,信息可以在位于一个或多个远程服务器上多个压缩的源代码包(或目标代码或二进制可执行代码等)中。可以在通过网络传输时对源代码包进行加密,并在必要时对其进行解密、解压缩、组装(例如,链接),并在本地机器上编译或解释(例如,成为库、独立可执行文件等),并由本地机器执行。
可以利用多种传输协议(例如,帧中继、互联网协议(IP)、传输控制协议(TCP)、用户数据报协议(UDP)、超文本传输协议(HTTP)等)中的任何一种,经由网络接口设备2720,使用传输介质,在通信网络2726上进一步发送或接收指令2724。示例性通信网络可以包括局域网(LAN)、广域网(WAN)、分组数据网络(例如,互联网)、移动电话网络(例如,蜂窝网络)、普通老式电话(POTS)网络、和无线数据网络(例如,称为的电气和电子工程师协会(IEEE)802.11标准族、称为的IEEE 802.16标准族)、IEEE 802.15.4标准族、对等对等(P2P)网络及其他。在示例中,网络接口设备2720可以包括一个或多个物理插孔(例如,以太网、同轴、或电话插孔)或一个或多个天线以连接到通信网络2726。在示例中,网络接口设备2720可以包括多个天线,以使用单输入多输出(SIMO)、多输入多输出(MIMO)、或多输入单输出(MISO)技术中的至少一种进行无线通信。术语“传输介质”应被认为包括能够存储、编码或携带供机器2700执行的指令的任何无形介质,并且包括数字或模拟通信信号或其他无形介质以促进这种软件的通信。传输介质是机器可读介质。
图28是示出计算设备的示例性硬件和软件架构的图示,其中示出了硬件组件和软件组件之间的各种接口。如HW所示,硬件组件位于分隔线下方,而由SW表示的软件组件位于分隔线上方。在硬件侧,处理设备2802(可以包括一个或多个微处理器、数字信号处理器等,每个具有一个或多个处理器核心)与存储器管理设备2804和系统互连2806接口连接。存储器管理设备2804提供由正被执行的处理使用的虚拟存储器和物理存储器之间的映射。存储器管理设备2804可以是中央处理单元的组成部分,该中央处理单元还包括处理设备2802。
互连2806包括底板,例如,存储器、数据和控制线,以及与输入/输出设备的接口,例如,PCI、USB等。存储器2808(例如,动态随机存取存储器—DRAM)和诸如闪存之类的非易失性存储器2809(例如,电可擦除只读存储器—EEPROM、NAND闪存、NOR闪存等)通过存储器控制器2810与存储器管理设备2804和互连2806接口连接。在示例中,该体系结构可以支持外围设备的直接存储器访问(DMA)。I/O设备(包括视频和音频适配器、非易失性存储设备、外部外围设备链接,例如,USB,蓝牙等)以及网络接口设备(例如,通过Wi-Fi或LTE家庭接口进行通信的设备)共同表示为I/O设备和联网2812,其通过对应的I/O控制器2814与互连2806接口连接。
在软件侧,预操作系统(pre-OS)环境2816,其在初始系统开机时执行,并负责发起操作系统的启动。pre-OS环境2816的一个传统示例是系统基本输入/输出系统(BIOS)。在当今的系统中,实现了统一的可扩展固件接口(UEFI)。pre-OS环境2816负责发起操作系统的开启,而且还根据本发明的某些方面为嵌入式应用程序提供执行环境。
操作系统(OS)2818提供了内核,该内核控制硬件设备、管理对存储器中的程序的存储器访问、协调任务并促进多任务处理、组织要存储的数据、分配存储器空间和其他资源、将程序二进制代码加载到存储器中、发起应用程序的执行,该应用程序然后与用户并与硬件设备进行交互,以及检测各种定义的中断并做出响应。而且,操作系统2818提供设备驱动器以及各种公共服务,例如,促进与外围设备接口连接和联网的那些公共服务,其为应用提供抽象以使得应用不需要负责处理这种公共操作的细节。操作系统2818另外提供图形用户界面(GUI),该GUI经由诸如监视器、键盘、鼠标、麦克风、相机、触摸屏之类的外围设备促进与用户交互。
运行时系统2820实现执行模型的部分,包括诸如在函数调用之前将参数放到栈上、盘输入/输出(I/O)的行为、以及与并行执行相关的行为之类的操作。运行时系统2820还可以执行支持服务,例如,类型检查、调试、或代码生成和优化。
库2822包括程序功能的集合,这些程序功能为应用程序提供进一步的抽象。这些包括例如共享库、动态链接库(DLL)。库2822可以是操作系统2818、运行时系统2820的组成部分,或者可以是附加特征,或者甚至是远程托管的。库2822定义了应用程序接口(API),应用程序2824可以通过该API进行各种函数调用,以调用操作系统2818提供的服务。除由协调计算设备本身的基本可操作性的较低级系统程序执行的任务之外,应用程序2824是那些为用户执行有用任务的程序。
图13B是示出根据实施例的处理设备2902的框图。在示例中,所示的两个或更多个处理设备2902被形成在共同的半导体基板上。CPU 2940可以包含一个或多个处理核心2942,根据处理器的特定架构,每个处理核心具有一个或多个算术逻辑单元(ALU)、指令取回单元、指令解码单元、控制单元、寄存器、数据栈指针、程序计数器、和其他必要的组件。作为说明性示例,CPU 2940可以是x86型的处理器。处理设备2902还可以包括图形处理单元(GPU)2944。在示例中,GPU 2944可以是专用协处理器,其从CPU 2940分担了某些计算密集型操作,特别是与图形渲染相关联的那些操作。CPU 2940和GPU 2944一般可以协同工作,共享对存储器资源、I/O通道等的访问。
在示例中,处理设备2902还可以包括看守处理器2946。看守处理器2946一般不像CPU 2940和GPU 2944那样参与执行软件代码的处理工作。在示例中,看守处理器2946不与CPU 2940和GPU 2944共享存储器空间,并且因此不被布置成执行操作系统或应用程序。替代地,看守处理器2946可以执行支持CPU 2940、GPU 2944、和计算机系统的其他组件的技术工作的专用固件。在示例中,看守处理器被实现为微控制器设备,其可以物理上与CPU 2940存在于同一集成电路管芯上,或者可以存在于不同的集成电路芯片上。看守处理器2946还可以包括一组专用的I/O设备,以使其能够与外部实体进行通信。在一种类型的实施例中,看守处理器2946是使用可管理性引擎(ME)或平台安全处理器(PSP)来实现的。输入/输出(I/O)控制器2948协调各种处理设备2940、2944、2946之间以及与外部电路(比如,系统互连)之间的信息流。
图30是示出根据实施例的CPU 3040的示例组件的框图。如图所示,CPU 3040包括一个或多个核心3052、缓存3054、和CPU控制器3056,它们协调(一个或多个)核心3052的互操作和任务,并提供接口以促进CPU3040的各种内部组件之间以及与诸如存储器总线或系统互连之类的外部组件的数据流。在一实施例中,CPU 3040的所有示例组件都被形成在共同的半导体基板。
CPU 3040包括非易失性存储器3058(例如,闪存、EEPROM等),用于存储基础代码的某些部分,例如,初始化引擎和微代码。而且,CPU3040可以与外部(例如,形成在单独的IC上)非易失性存储器设备3060接口连接,该非易失性存储设备3060存储由初始化引擎启用的基础代码,例如,系统BIOS或UEFI代码。
附加注释和示例
示例1是用于对道路表面进行建模的设备,该设备包括:硬件传感器接口,用于获得代表道路表面的按时间排序的图像序列,该图像序列中的一个图像是当前图像;以及处理电路,用于:向人工神经网络(ANN)提供数据集以产生场景的三维结构,该数据集包括:该图像序列的一部分,该图像序列的一部分包括当前图像;传感器的运动;和核点;以及使用场景的三维结构对道路表面进行建模。
在示例2中,示例1的主题包括,其中,该图像序列的一部分包括紧接当前图像之前的图像。
在示例3中,示例2的主题包括,其中,该图像序列的一部分是总共三个图像。
在示例4中,示例1-3的主题包括,其中,该图像序列的一部分包括在当前图像之前的图像,这些图像被该图像序列中的一个或多个图像隔开。
在示例5中,示例1-4的主题包括,其中,将核点提供为与当前图像具有相同维数的梯度图像,梯度图像中的像素的值表示在当前图像中的像素距核点的距离。
在示例6中,示例5的主题包括,其中,基线为至少0.5m。
在示例7中,示例5-6的主题包括,其中,梯度图像具有比当前图像低的分辨率。
在示例8中,示例5-7的主题包括,其中,梯度图像仅表示距核点的水平距离,并且其中第二梯度图像被提供给ANN以表示距核点的竖直距离。
在示例9中,示例1-8的主题包括,其中,传感器的运动被提供为与当前图像具有相同维数的恒定值图像。
在示例10中,示例9的主题包括,其中,恒定值是传感器的前向运动与传感器距平面的高度的比值。
在示例11中,示例1-10的主题包括,其中,场景的三维结构是伽马图像,该伽马图像包括具有伽马值的像素,该伽马值是点在平面上方的高度与距捕获当前图像的传感器的距离的比值,该平面表示道路表面。
在示例12中,示例1-11的主题包括,其中,为对道路表面进行建模,处理电路通过将场景的三维结构与第二ANN的输出进行比较来标识反射区域,第二ANN被训练为接受图像序列的该部分并产生第二三维结构,其中与第一ANN的训练相比第二ANN的训练在图像序列的该部分中使用更多的摄影测量损失。
在示例13中,示例12的主题包括,其中,该ANN和第二ANN被实现为经训练而产生双通道输出的单个ANN,其中,第一通道是场景的三维结构,而第二通道是由在其训练中使用了更多摄影测量损失的第二ANN产生的三维结构。
在示例14中,示例1-13的主题包括,其中,所述处理电路被配置为使用所述三维结构调用第二ANN,来确定所述特征表示道路表面的环境内的移动对象还是非移动对象。
在示例15中,示例14的主题包括,其中,为使用三维结构调用第二ANN,处理电路向第二ANN提供以下项:当前图像;使用三维结构变形的先前图像;和目标标识符。
在示例16中,示例15的主题包括,其中,目标标识符是图像,其中该图像的像素指示距目标中心的距离。
在示例17中,示例15-16的主题包括,其中,目标标识符包括目标的大小。
在示例18中,示例15-17的主题包括,其中,目标标识符是与目标相对应的像素的掩模。
在示例19中,示例1-18的主题包括,其中,为对道路表面进行建模,处理电路计算距道路表面特征的平面的竖直偏差。
在示例20中,示例1-19的主题包括,其中,ANN是卷积神经网络(CNN)。
在示例21中,示例20的主题包括:其中,传感器的运动和核点被在瓶颈层处提供给CNN。
在示例22中,示例1-21的主题包括,其中,使用无监督训练技术来训练ANN,其中通过测量未来图像的模型和未来图像之间的差异来确定误差,通过对未来图像之前的图像进行伽马变形来产生该未来图像的模型。
在示例23中,示例1-22的主题包括,其中,使用无监督训练技术来训练ANN,其中通过测量位置的预测伽马与该位置处的传感器移动之间的差异来确定误差,传感器移动包括垂直于平面的俯仰、偏航、侧倾、或平移。
在示例24中,示例1-23的主题包括,其中,使用无监督训练技术来训练ANN,其中误差是通过在两个不同时间的两个图像之间的重叠片段的伽马之差来确定的,其中对第一图像进行推断,并且其中重叠片段在图像中更靠近传感器。
示例25是用于对道路表面进行建模的方法,该方法包括:获得代表道路表面的按时间排序的图像序列,该图像序列中的一个图像是当前图像;向人工神经网络(ANN)提供数据集以产生场景的三维结构,该数据集包括:该图像序列的一部分,该图像序列的一部分包括当前图像;传感器的运动;和核点;以及使用场景的三维结构对道路表面进行建模。
在示例26中,示例25的主题包括,其中,该图像序列的一部分包括紧接当前图像之前的图像。
在示例27中,示例26的主题包括,其中,该图像序列的一部分总共是三个图像。
在示例28中,示例25-27的主题包括,其中,该图像序列的一部分包括在当前图像之前的图像,这些图像被该图像序列中的一个或多个图像隔开。
在示例29中,示例25-28的主题包括,其中,将核点提供为与当前图像具有相同维数的梯度图像,梯度图像中的像素的值表示在当前图像中的像素距核点的距离。
在示例30中,示例29的主题包括,其中,基线为至少0.5m。
在示例31中,示例29-30的主题包括,其中,梯度图像具有比当前图像低的分辨率。
在示例32中,示例29-31的主题包括:其中,梯度图像仅表示距核点的水平距离,并且其中第二梯度图像被提供给ANN以表示距核点的竖直距离。
在示例33中,示例25-32的主题包括,其中,传感器的运动被提供为与当前图像具有相同维数的恒定值图像。
在示例34中,示例33的主题包括:其中,恒定值是传感器的前向运动与传感器距平面的高度的比值。
在示例35中,示例25-34的主题包括,其中,场景的三维结构是伽马图像,该伽马图像包括具有伽马值的像素,该伽马值是点在平面上方的高度与距捕获当前图像的传感器的距离的比值,该平面表示道路表面。
在示例36中,示例25-35的主题包括,其中,对道路表面进行建模包括:通过将场景的三维结构与第二ANN的输出进行比较来标识反射区域,第二ANN被训练为接受图像序列的该部分并产生第二三维结构,其中与第一ANN的训练相比第二ANN的训练在图像序列的该部分中使用更多的摄影测量损失。
在示例37中,示例36的主题包括:其中,该ANN和第二ANN被实现为经训练而产生双通道输出的单个ANN,其中,第一通道是场景的三维结构,而第二通道是由在其训练中使用了更多摄影测量损失的第二ANN产生的三维结构。
在示例38中,示例25-37的主题包括,使用所述三维结构调用第二ANN来确定所述特征表示道路表面的环境内的移动对象还是非移动对象。
在示例39中,示例38的主题包括,其中,使用三维结构调用第二ANN包括向第二ANN提供以下项:当前图像;使用三维结构变形的先前图像;和目标标识符。
在示例40中,示例39的主题包括,其中,目标标识符是图像,其中该图像的像素指示距目标中心的距离。
在示例41中,示例39-40的主题包括,其中,目标标识符包括目标的大小。
在示例42中,示例39-41的主题包括,其中,目标标识符是与目标相对应的像素的掩模。
在示例43中,示例25-42的主题包括,其中,对道路表面进行建模包括计算距道路表面特征的平面的竖直偏差。
在示例44中,示例25-43的主题包括,其中,ANN是卷积神经网络(CNN)。
在示例45中,示例44的主题包括:其中,传感器的运动和核点被在瓶颈层处提供给CNN。
在示例46中,示例25-45的主题包括,其中,使用无监督训练技术来训练ANN,其中通过测量未来图像的模型和未来图像之间的差异来确定误差,通过对未来图像之前的图像进行伽马变形来产生该未来图像的模型。
在示例47中,示例25-46的主题包括:其中,使用无监督训练技术来训练ANN,其中通过测量位置的预测伽马与该位置处的传感器移动之间的差异来确定误差,传感器移动包括垂直于平面的俯仰、偏航、侧倾、或平移。
在示例48中,示例25-47的主题包括,其中,使用无监督训练技术来训练ANN,其中误差是通过在两个不同时间的两个图像之间的重叠片段的伽马之差来确定的,其中对第一图像进行推断,并且其中重叠片段在图像中更靠近传感器。
示例49是至少一种机器可读介质,包括用于对道路表面进行建模的指令,所述指令在由处理电路执行时使得该处理电路执行操作,包括:获得代表道路表面的按时间排序的图像序列,该图像序列中的一个图像是当前图像;向人工神经网络(ANN)提供数据集以产生场景的三维结构,该数据集包括:该图像序列的一部分,该图像序列的一部分包括当前图像;传感器的运动;和核点;以及使用场景的三维结构对道路表面进行建模。
在示例50中,示例49的主题包括,其中,该图像序列的一部分包括紧接当前图像之前的图像。
在示例51中,示例50的主题包括,其中,该图像序列的一部分总共是三个图像。
在示例52中,示例49-51的主题包括,其中,该图像序列的一部分包括在当前图像之前的图像,这些图像被该图像序列中的一个或多个图像隔开。
在示例53中,示例49-52的主题包括,其中,将核点提供为与当前图像具有相同维数的梯度图像,梯度图像中的像素的值表示在当前图像中的像素距核点的距离。
在示例54中,示例53的主题包括,其中,基线为至少0.5m。
在示例55中,示例53-54的主题包括,其中,梯度图像具有比当前图像低的分辨率。
在示例56中,示例53-55的主题包括:其中,梯度图像仅表示距核点的水平距离,并且其中第二梯度图像被提供给ANN以表示距核点的竖直距离。
在示例57中,示例49-56的主题包括:其中,将传感器的运动提供为具有与当前图像相同维数的恒定值图像。
在示例58中,示例57的主题包括:其中,恒定值是传感器的前向运动与传感器距平面的高度的比值。
在示例59中,示例49-58的主题包括:其中,场景的三维结构是伽马图像,该伽马图像包括具有伽马值的像素,该伽马值是点在平面上方的高度与距捕获当前图像的传感器的距离的比值,该平面表示道路表面。
在示例60中,示例49-59的主题包括,其中,对道路表面进行建模包括:通过将场景的三维结构与第二ANN的输出进行比较来标识反射区域,第二ANN被训练为接受图像序列的该部分并产生第二三维结构,其中与第一ANN的训练相比第二ANN的训练在图像序列的该部分中使用更多的摄影测量损失。
在示例61中,示例60的主题包括:其中,该ANN和第二ANN被实现为经训练而产生双通道输出的单个ANN,其中,第一通道是场景的三维结构,而第二通道是由在其训练中使用了更多摄影测量损失的第二ANN产生的三维结构。
在示例62中,示例49-61的主题包括,其中,操作包括使用所述三维结构调用第二ANN来确定所述特征表示道路表面的环境内的移动对象还是非移动对象。
在示例63中,示例62的主题包括:其中使用三维结构调用第二ANN包括向第二ANN提供以下项:当前图像;使用三维结构变形的先前图像;和目标标识符。
在示例64中,示例63的主题包括:其中,目标标识符是图像,其中该图像的像素指示距目标中心的距离。
在示例65中,示例63-64的主题包括,其中,目标标识符包括目标的大小。
在示例66中,示例63-65的主题包括,其中,目标标识符是与目标相对应的像素的掩码。
在示例67中,示例49-66的主题包括,其中,对道路表面进行建模包括计算距道路表面特征的平面的竖直偏差。
在示例68中,示例49-67的主题包括,其中,ANN是卷积神经网络(CNN)。
在示例69中,示例68的主题包括,其中,传感器的运动和核点被在瓶颈层处提供给CNN。
在示例70中,示例49-69的主题包括,其中,使用无监督训练技术来训练ANN,其中通过测量未来图像的模型和未来图像之间的差异来确定误差,通过对未来图像之前的图像进行伽马变形来产生该未来图像的模型。
在示例71中,示例49-70的主题包括,其中,使用无监督训练技术来训练ANN,其中通过测量位置的预测伽马与该位置处的传感器移动之间的差异来确定误差,传感器移动包括垂直于平面的俯仰、偏航、侧倾、或平移。
在示例72中,示例49-71的主题包括,其中,使用无监督训练技术来训练ANN,其中误差是通过在两个不同时间的两个图像之间的重叠片段的伽马之差来确定的,其中对第一图像进行推断,并且其中重叠片段在图像中更靠近传感器。
示例73是用于对道路表面进行建模的系统,该系统包括:用于代表道路表面的按时间排序的图像序列的装置,该图像序列中的一个图像是当前图像;用于向人工神经网络(ANN)提供数据集以产生场景的三维结构的装置,该数据集包括:该数据集包括:该图像序列的一部分,该图像序列的一部分包括当前图像;传感器的运动;和核点;以及用于使用场景的三维结构对道路表面进行建模的装置。
在示例74中,示例73的主题包括其中,该图像序列的一部分包括紧接当前图像之前的图像。
在示例75中,示例74的主题包括,其中,图像序列的一部分总共是三个图像。
在示例76中,示例73-75的主题包括,其中,该图像序列的一部分包括在当前图像之前的图像,这些图像被该图像序列中的一个或多个图像隔开。
在示例77中,示例73-76的主题包括,其中,将核点提供为与当前图像具有相同维数的梯度图像,梯度图像中的像素的值表示在当前图像中的像素距核点的距离。
在示例78中,示例77的主题包括,其中,基线为至少0.5m。
在示例79中,示例77-78的主题包括:其中,,梯度图像具有比当前图像低的分辨率。
在示例80中,示例77-79的主题包括,其中,梯度图像仅表示距核点的水平距离,并且其中第二梯度图像被提供给ANN以表示距核点的竖直距离。
在示例81中,示例73-80的主题包括,其中,传感器的运动被提供为与当前图像具有相同维数的恒定值图像。
在示例82中,示例81的主题包括,其中,恒定值是传感器的前向运动与传感器距平面的高度的比值。
在示例83中,示例73-82的主题包括:其中,场景的三维结构是伽马图像,该伽马图像包括具有伽马值的像素,该伽马值是点在平面上方的高度与距捕获当前图像的传感器的距离的比值,该平面表示道路表面。
在示例84中,示例73-83的主题包括,其中,用于对道路表面进行建模的装置包括:用于通过将场景的三维结构与第二ANN的输出进行比较来标识反射区域的装置,第二ANN被训练为接受图像序列的该部分并产生第二三维结构,其中与第一ANN的训练相比第二ANN的训练在图像序列的该部分中使用更多的摄影测量损失。
在示例85中,示例84的主题包括:其中,该ANN和第二ANN被实现为经训练而产生双通道输出的单个ANN,其中,第一通道是场景的三维结构,而第二通道是由在其训练中使用了更多摄影测量损失的第二ANN产生的三维结构。
在示例86中,示例73-85的主题包括,用于使用所述三维结构调用第二ANN来确定所述特征表示道路表面的环境内的移动对象还是非移动对象的装置。
在示例87中,示例86的主题包括,其中,用于使用三维结构调用第二ANN的装置包括:用于向第二ANN提供以下项的装置:当前图像;使用三维结构变形的先前图像;和目标标识符。
在示例88中,示例87的主题包括,其中,目标标识符包括目标的大小。
在示例89中,示例87-88的主题包括,其中,目标标识符包括目标的大小。
在示例90中,示例87-89的主题包括,其中,目标标识符是与目标相对应的像素的掩码。
在示例91中,示例73-90的主题包括,其中,用于对道路表面进行建模的装置包括用于计算距道路表面特征的平面的竖直偏差的装置。
在示例92中,示例73-91的主题包括,其中,ANN是卷积神经网络(CNN)。
在示例93中,示例92的主题包括,其中,传感器的运动和核点被在瓶颈层处提供给CNN。
在示例94中,示例73-93的主题包括:其中,使用无监督训练技术来训练ANN,其中通过测量未来图像的模型和未来图像之间的差异来确定误差,通过对未来图像之前的图像进行伽马变形来产生该未来图像的模型。
在示例95中,示例73-94的主题包括,其中,使用无监督训练技术来训练ANN,其中通过测量位置的预测伽马与该位置处的传感器移动之间的差异来确定误差,传感器移动包括垂直于平面的俯仰、偏航、侧倾、或平移。
在示例96中,示例73-95的主题包括,其中,使用无监督训练技术来训练ANN,其中误差是通过在两个不同时间的两个图像之间的重叠片段的伽马之差来确定的,其中对第一图像进行推断,并且其中重叠片段在图像中更靠近传感器。
示例97是用于对道路表面进行建模的方法,该方法包括:获得代表表面的按时间排序的图像序列,该图像序列中的一个图像是当前图像;将数据集提供给第一人工神经网络(ANN)以产生场景的三维结构的第一输出,该数据集包括:图像序列的一部分,图像序列的该部分包括当前图像;传感器的运动;和核点;将该数据集提供给第二ANN以产生场景的摄影测量损失的第二输出;将第一输出和第二输出进行比较以确定该表面的特征。
在示例98中,示例97的主题包括,其中,第一输出是场景的三维结构,并且其中第二输出是基于场景的摄影测量损失的三维结构。
在示例99中,示例98的主题包括,其中,第一输出是伽马图。
在示例100中,示例99的主题包括,其中,将第一输出和第二输出进行比较包括将第二输出中的孔洞与第一输出中的恒定伽马的连续区域对齐。
在示例101中,示例97-100的主题包括,其中,使用损失函数来训练第一ANN和第二ANN,这些损失函数在损失的类型之间的权重不同并且使用相同类型的损失。
在示例102中,示例101的主题包括,其中,损失的类型包括光度损失、几何结构损失、传感器运动损失、或未来图像损失中的至少一种。
在示例103中,示例97-102的主题包括,其中,第一ANN和第二ANN被实现为经训练以产生双通道输出的单个ANN,其中第一通道是所述第一输出,并且第二通道是所述第二输出。
在示例104中,示例97-103的主题包括,其中,第一ANN和第二ANN被实现为共享单个ANN直至出现瓶颈,然后则分叉。
示例105是至少一种机器可读介质,其包括用于对道路表面进行建模的指令,所述指令在由处理电路执行时使得该处理电路执行操作,包括:获得代表表面的按时间排序的图像序列,该图像序列中的一个图像是当前图像;将数据集提供给第一人工神经网络(ANN)以产生场景的三维结构的第一输出,该数据集包括:图像序列的一部分,图像序列的该部分包括当前图像;传感器的运动;和核点;将该数据集提供给第二ANN以产生场景的摄影测量损失的第二输出;将第一输出和第二输出进行比较以确定该表面的特征。
在示例106中,示例105的主题包括:其中,第一输出是场景的三维结构,并且其中第二输出是基于场景的摄影测量损失的三维结构。
在示例107中,示例106的主题包括,其中,第一输出是伽马图。
在示例108中,示例107的主题包括,其中,将第一输出和第二输出进行比较包括将第二输出中的孔洞与第一输出中的恒定伽马的连续区域对齐。
在示例109中,示例105-108的主题包括,其中,使用损失函数来训练第一ANN和第二ANN,这些损失函数在损失的类型之间的权重不同并且使用相同类型的损失。
在示例110中,示例109的主题包括,其中,损失的类型包括光度损失、几何结构损失、传感器运动损失、或未来图像损失中的至少一种。
在示例111中,示例105-110的主题包括:其中,第一ANN和第二ANN被实现为经训练以产生双通道输出的单个ANN,其中第一通道是所述第一输出,并且第二通道是所述第二输出。
在示例112中,示例105-111的主题包括,其中,第一ANN和第二ANN被实现为共享单个ANN直至出现瓶颈,然后则分叉。
示例113是用于对道路表面进行建模的设备,该设备包括:图像捕获设备,用于获得代表表面的按时间排序的图像序列,该图像序列中的一个图像是当前图像;以及处理电路,用于:将数据集提供给第一人工神经网络(ANN)以产生场景的三维结构的第一输出,该数据集包括:图像序列的一部分,图像序列的该部分包括当前图像;传感器的运动;和核点;将该数据集提供给第二ANN以产生场景的摄影测量损失的第二输出;将第一输出和第二输出进行比较以确定该表面的特征。
在示例114中,示例113的主题包括:其中,第一输出是场景的三维结构,并且其中第二输出是基于场景的摄影测量损失的三维结构。
在示例115中,示例114的主题包括,其中,第一输出是伽马图。
在示例116中,示例115的主题包括,其中,将第一输出和第二输出进行比较包括将第二输出中的孔洞与第一输出中的恒定伽马的连续区域对齐。
在示例117中,示例113-116的主题包括,其中,使用损失函数来训练第一ANN和第二ANN,这些损失函数在损失的类型之间的权重不同并且使用相同类型的损失。
在示例118中,示例117的主题包括,其中,损失的类型包括光度损失、几何结构损失、传感器运动损失、或未来图像损失中的至少一种。
在示例119中,示例113-118的主题包括,其中,第一ANN和第二ANN被实现为经训练以产生双通道输出的单个ANN,其中第一通道是所述第一输出,并且第二通道是所述第二输出。
在示例120中,示例113-119的主题包括,其中,第一ANN和第二ANN被实现为共享单个ANN直至出现瓶颈,然后则分叉。
示例121是一种用于车辆的自主导航系统,该系统包括:至少一个图像捕获设备,被配置为获得用户车辆附近区域的多个图像;数据接口;以及至少一个处理设备,被配置为:经由数据接口接收所述多个图像;从所述多个图像中确定在车辆的路径上存在水坑。
在示例122中,示例121的主题包括:其中,至少一个处理设备被配置为:从所述多个图像确定目标是否位于穿过水坑的车辆的飞溅区域内;并且控制车辆执行导航操纵以修改车辆的飞溅区域,以使得车辆的新飞溅区域不包括该目标。
在示例123中,示例122的主题包括:其中,导航操纵是以下项中的至少一项:使车辆减速,执行车道内转向以使得车辆的新路径距目标足够远来防止目标被飞溅物击中,或执行车道内转弯,以使得车辆的新路径不再通过水坑。
在示例124中,示例121-123的主题包括,其中,目标是行人。
在示例125中,示例121-124的主题包括,其中,目标是车辆。
示例126是用于控制沿着道路行驶的自主车辆的方法,该方法由计算平台执行,并且包括:存储表示从该车辆的角度看的至少一个视场的图像序列,该至少一个视场包括道路的一部分;处理该图像序列以检测道路上的水坑;确定水坑附近是否存在行人;并且响应于对水坑的检测而确定驾驶响应解决方案,其中该驾驶响应解决方案是基于是否检测到存在行人的。
在示例127中,示例126的主题包括,通过安装在车辆上的相机系统捕获该图像序列;并且其中处理包括对该图像序列进行单眼图像处理。
在示例128中,示例127的主题包括,其中,该图像序列是由相机系统的多个图像传感器捕获的。
在示例129中,示例126-128的主题包括,其中,处理该图像序列以检测道路上的水坑包括:基于图像序列计算确定道路的竖直轮廓;确定该竖直轮廓中是否存在超过深度阈值的凹陷;以及针对凹陷的特性应用水坑检测标准。
在示例130中,示例129的主题包括:其中,水坑检测标准包括边界清晰度标准,并且其中应用水坑检测标准包括:产生对水坑的边界的计算评估并且将该计算评估与边界清晰度标准进行。
在示例131中,示例130的主题包括,其中,对水坑的边界的计算评估包括:水坑内部沿着边界的点的竖直轮廓得分,以及水坑外部沿着边界的点的竖直轮廓得分,并且其中,边界清晰度标准包括适用于在水坑内部的点的竖直轮廓得分的第一阈值和适用于水坑外部的点的竖直轮廓得分的第二阈值。
在示例132中,示例129-131的主题包括,其中,水坑检测标准包括适用于水坑内部的点的竖直轮廓得分的连续性标准。
在示例133中,示例126-132的主题包括,其中,确定在水坑附近是否存在行人包括处理该图像序列以执行被配置为检测人的对象辨识操作。
在示例134中,示例126-133的主题包括,其中,响应于对水坑的检测而确定驾驶响应解决方案包括:响应于在水坑的附近的行人的肯定检测而为车辆产生路线或速度响应,以减少由于水坑而飞溅行人的可能性或者避免由于水坑而飞溅行人。
在示例135中,示例134的主题包括,其中,确定驾驶响应解决方案包括基于风险规避决策方案从多个潜在驾驶响应选项中选择驾驶响应解决方案。
在示例136中,示例135的主题包括,其中,对水坑附近的行人的肯定检测被表示为针对风险规避决策方案的增量风险因子,其中,该增量风险因子对与水坑相关联的总风险得分有贡献,并且其中总风险得分表示车辆执行驾驶响应解决方案的必要程度。
在示例137中,示例135-136的主题包括,其中,响应于对水坑的检测来确定驾驶响应解决方案包括:将与每个潜在驾驶响应选项相关联的风险与当前情境场景的风险评估进行比较,在当前情境场景中该潜在驾驶响应选项对风险因子有贡献。
在示例138中,示例137的主题包括执行对当前情境场景的评估。
示例139是用于在沿道路行驶的车辆中使用的机器视觉系统的装置,该装置包括:计算平台,该计算平台包括至少一个处理器和存储电路,其中,该计算平台用于实现:数据库,用于包含表示从该车辆的角度看的至少一个视场的图像序列,该至少一个视场包括道路的一部分;水坑检测引擎,用于基于该图像序列检测道路上是否存在水坑;行人检测引擎,用于确定水坑附近是否存在行人;以及驾驶响应引擎,用于响应于对水坑的检测而确定驾驶响应解决方案,其中该驾驶响应解决方案是基于行人检测引擎是否检测到存在行人的。
在示例140中,示例139的主题包括,安装在车辆上的相机系统,其可操作来捕获该图像序列;并且其中,水坑检测引擎将对图像序列执行单眼图像处理。
在示例141中,示例140的主题包括,其中,该图像序列由相机系统的多个图像传感器捕获。
在示例142中,示例139-141的主题包括,其中,水坑检测引擎用于:基于该图像序列通过计算确定道路的竖直轮廓;确定竖直轮廓中是否存在超过深度阈值的凹陷;并且针对凹陷的特性应用水坑检测标准。
在示例143中,示例142的主题包括,其中,所述水坑检测标准包括边界清晰度标准,并且其中,应用所述水坑检测标准包括:对所述水坑的边界进行计算评估并且将所述计算结果与所述边界清晰度标准进行比较。
在示例144中,示例143的主题包括,其中,对水坑的边界的计算评估包括:水坑内部沿着边界的点的竖直轮廓得分,以及水坑外部沿着边界的点的竖直轮廓得分,并且其中,边界清晰度标准包括适用于在水坑内部的点的竖直轮廓得分的第一阈值和适用于水坑外部的点的竖直轮廓得分的第二阈值。
在示例145中,示例142-144的主题包括,其中,水坑检测标准包括适用于水坑内部的点的竖直轮廓得分的连续性标准。
在示例146中,示例139-145的主题包括,其中,行人检测引擎通过至少处理该图像序列以执行被配置为检测人的对象辨识操作,来确定水坑附近是否存在行人。
在示例147中,示例139-146的主题包括,其中,驾驶响应引擎将响应于在水坑的附近的行人的肯定检测而为车辆产生路线或速度响应,以减少由于水坑而飞溅行人的可能性或者避免由于水坑而飞溅行人。
在示例148中,示例147的主题包括,其中,基于风险规避决策方案从多个潜在驾驶响应选项中选择驾驶响应解决方案。
在示例149中,示例148的主题包括,其中,对水坑附近的行人的肯定检测被表示为针对风险规避决策方案的增量风险因子,其中,该增量风险因子对与水坑相关联的总风险得分有贡献,并且其中总风险得分表示车辆执行驾驶响应解决方案的必要程度。
在示例150中,示例148-149的主题包括,其中,驾驶响应解决方案引擎将与每个潜在驾驶响应选项相关联的风险与当前情境场景的风险评估进行比较,在当前情境场景中该潜在驾驶响应选项对风险因子有贡献。
在示例151中,示例150的主题包括,其中,驾驶响应解决方案引擎执行对当前情境场景的评估。
示例152是至少一种机器可读介质,包含指令,所述指令当由沿着道路行驶的自主车辆的计算平台执行时,使得该计算平台:存储表示从该车辆的角度看的至少一个视场的图像序列,该至少一个视场包括道路的一部分;处理该图像序列以检测道路上的水坑;确定水坑附近是否存在行人;以及响应于对水坑的检测而确定驾驶响应解决方案,其中该驾驶响应解决方案是基于是否检测到存在行人的。
在示例153中,示例152的主题包括,用于使得计算平台执行以下操作的指令:通过安装在车辆上的相机系统捕获该图像序列;并且其中处理包括对该图像序列进行单眼图像处理。
在示例154中,示例153的主题包括,其中,该图像序列是由相机系统的多个图像传感器捕获的。
在示例155中,示例152-154的主题包括,其中,使得处理该图像序列以检测道路上的水坑的指令包括用于以下操作指令:基于图像序列计算确定道路的竖直轮廓;确定该竖直轮廓中是否存在超过深度阈值的凹陷;以及针对凹陷的特性应用水坑检测标准。
在示例156中,示例155的主题包括,其中,水坑检测标准包括边界清晰度标准,并且其中应用水坑检测标准包括:产生对水坑的边界的计算评估并且将该计算评估与边界清晰度标准进行。
在示例157中,示例156的主题包括,其中,对水坑的边界的计算评估包括:水坑内部沿着边界的点的竖直轮廓得分,以及水坑外部沿着边界的点的竖直轮廓得分,并且其中,边界清晰度标准包括适用于在水坑内部的点的竖直轮廓得分的第一阈值和适用于水坑外部的点的竖直轮廓得分的第二阈值。
在示例158中,示例155-157的主题包括,其中,水坑检测标准包括适用于水坑内部的点的竖直轮廓得分的连续性标准。
在示例159中,示例152-158的主题包括,其中,使得确定在水坑附近是否存在行人的指令包括用于以下操作的指令:处理该图像序列以执行被配置为检测人的对象辨识操作。
在示例160中,示例152-159的主题包括,其中,使得响应于对水坑的检测而确定驾驶响应解决方案的指令包括用于以下操作的指令:响应于在水坑的附近的行人的肯定检测而为车辆产生路线或速度响应,以减少由于水坑而飞溅行人的可能性或者避免由于水坑而飞溅行人。
在示例161中,示例160的主题包括,其中,使得确定驾驶响应解决方案的指令包括用于以下操作的指令:基于风险规避决策方案从多个潜在驾驶响应选项中选择驾驶响应解决方案。
在示例162中,示例161的主题包括,其中,对水坑附近的行人的肯定检测被表示为针对风险规避决策方案的增量风险因子,其中,该增量风险因子对与水坑相关联的总风险得分有贡献,并且其中总风险得分表示车辆执行驾驶响应解决方案的必要程度。
在示例163中,示例161-162的主题包括,其中,使得响应于对水坑的检测来确定驾驶响应解决方案的指令包括用于以下操作的指令:将与每个潜在驾驶响应选项相关联的风险与当前情境场景的风险评估进行比较,在当前情境场景中该潜在驾驶响应选项对风险因子有贡献。
在示例164中,示例163的主题包括,用于执行对当前情境场景的评估的指令。
示例165是一种用于操作在车辆中使用的机器视觉系统的方法,该方法包括:由机器视觉系统读取表示至少一个视场的图像的时间序列,该至少一个视场包括由至少一个车载相机捕获的道路一部分;由机器视觉系统基于图像的时间序列通过计算确定道路的竖直轮廓;并且由所述机器视觉系统基于所述道路的竖直轮廓来检测道路上的水坑,包括:确定所述竖直轮廓中是否存在超过深度阈值的凹陷;并且针对凹陷的特性应用水坑检测标准。
在示例166中,示例165的主题包括,其中,确定竖直轮廓包括比较(a)由于车辆的实际运动而在该图像序列之间产生的道路外观的预测变化,以及(b)所捕获的图像序列的图像之间的实际差异,其中,作为比较结果而检测到的任何差异都表示该序列的图像之间的残余流,并且其中该残余流表明道路的竖直轮廓。
在示例167中,示例165-166的主题包括,其中,水坑检测标准包括边界清晰度标准,并且应用水坑检测标准包括产生对水坑的边界的计算评估并且将该计算评估与边界清晰度标准进行比较。
在示例168中,示例167的主题包括,其中,对水坑的边界的计算评估包括:水坑内部沿着边界的点的竖直轮廓得分,以及水坑外部沿着边界的点的竖直轮廓得分,并且其中,边界清晰度标准包括适用于在水坑内部的点的竖直轮廓得分的第一阈值和适用于水坑外部的点的竖直轮廓得分的第二阈值。
在示例169中,示例167-168的主题包括,其中,水坑检测标准包括适用于水坑内部的点的竖直轮廓得分的连续性标准。
在示例170中,示例165-169的主题包括,其中,该图像的时间序列是从单个相机获得的。
在示例171中,示例165-170的主题包括,其中,该图像的时间序列是从多个相机获得的。
在示例172中,示例165-171的主题包括,通过机器视觉系统确定与水坑有关的当前情境场景。
在示例173中,示例172的主题包括,其中,当前情境场景包括水坑的附近是否存在行人。
在示例174中,示例172-173的主题包括,其中,当前情境场景包括水坑相对于道路边界的位置。
在示例175中,示例172-174的主题包括,其中,当前情境场景包括水坑相对于道路上的车道标志的位置。
在示例176中,示例172-175的主题包括,由机器视觉系统响应于对水坑的检测而确定驾驶响应解决方案,该驾驶响应解决方案是基于当前情境场景的。
在示例177中,示例176的主题包括,其中,该驾驶响应解决方案包括车辆的路线或速度响应,以避免或减轻车辆撞击水坑的任何影响。
在示例178中,示例176-177的主题包括,驾驶响应解决方案包括基于风险规避决策方案从多个潜在驾驶响应选项中选择驾驶响应解决方案。
在示例179中,示例178的主题包括,其中,风险规避决策方案计算与水坑相关联的风险得分,该风险得分表示车辆执行驾驶响应解决方案的必要程度。
在示例180中,示例178-179的主题包括,其中,驾驶响应解决方案基于与每个潜在驾驶响应选项相关联的风险与当前情境场景的风险评估的比较,在当前情境场景中潜在驾驶响应选项对风险因子有贡献。
示例181是至少一种机器可读介质,其包含指令,当这些指令由沿道路行驶的自主车辆的机器视觉系统执行时,使得该机器视觉系统:读取表示至少一个视场的图像的时间序列,该至少一个视场包括由至少一个车载相机捕获的道路一部分;基于图像的时间序列通过计算确定道路的竖直轮廓;基于所述道路的竖直轮廓来检测道路上的水坑,包括:确定所述竖直轮廓中是否存在超过深度阈值的凹陷;并且针对凹陷的特性应用水坑检测标准。
在示例182中,示例181的主题包括,其中,使得确定竖直轮廓的指令包括用于以下操作的指令:比较(a)由于车辆的实际运动而在该图像序列之间产生的道路外观的预测变化,以及(b)所捕获的图像序列的图像之间的实际差异,其中,作为比较结果而检测到的任何差异都表示该序列的图像之间的残余流,并且其中该残余流表明道路的竖直轮廓。
在示例183中,示例181-182的主题包括,其中,水坑检测标准包括边界清晰度标准,并且应用水坑检测标准包括产生对水坑的边界的计算评估并且将该计算评估与边界清晰度标准进行比较。
在示例184中,示例183的主题包括,其中,对水坑的边界的计算评估包括:水坑内部沿着边界的点的竖直轮廓得分,以及水坑外部沿着边界的点的竖直轮廓得分,并且其中,边界清晰度标准包括适用于在水坑内部的点的竖直轮廓得分的第一阈值和适用于水坑外部的点的竖直轮廓得分的第二阈值。
在示例185中,示例183-184的主题包括,其中,水坑检测标准包括适用于水坑内部的点的竖直轮廓得分的连续性标准。
在示例186中,示例181-185的主题包括,其中,该图像的时间序列是从单个相机获得的。
在示例187中,示例181-186的主题包括,其中,该图像的时间序列是从多个相机获得的。
在示例188中,示例181-187的主题包括,用于使机器视觉系统确定与水坑有关的当前情境场景的指令。
在示例189中,示例188的主题包括,其中,当前情境场景包括水坑的附近是否存在行人。
在示例190中,示例188-189的主题包括,其中,当前情境场景包括水坑相对于道路边界的位置。
在示例191中,示例188-190的主题包括,其中,当前情境场景包括水坑相对于道路上的车道标志的位置。
在示例192中,示例188-191的主题包括,用于使得机器视觉系统响应于对水坑的检测来确定驾驶响应解决方案的指令,该驾驶响应解决方案是基于当前情境场景的。
在示例193中,示例192的主题包括,其中,该驾驶响应解决方案包括车辆的路线或速度响应,以避免或减轻车辆撞击水坑的任何影响。
在示例194中,示例192-193的主题包括,驾驶响应解决方案包括基于风险规避决策方案从多个潜在驾驶响应选项中选择驾驶响应解决方案。
在示例195中,示例194的主题包括:其中,风险规避决策方案计算与水坑相关联的风险得分,该风险得分表示车辆执行驾驶响应解决方案的必要程度。
在示例196中,示例194-195的主题包括,其中,驾驶响应解决方案基于与每个潜在驾驶响应选项相关联的风险与当前情境场景的风险评估的比较,在当前情境场景中潜在驾驶响应选项对风险因子有贡献。
示例197是用于从沿道路行驶的车辆测量道路结构的机器实现的方法,该方法包括:读取一组传入数据,该组传入数据包括:(a)表示至少一个视场的捕获图像的时间序列,该至少一个视场包括由至少一个车载相机捕获的所述道路的一部分;(b)表示至少一台车载相机的实际运动的自我运动信息;(c)该道路的表面的参数模型;预处理该组传入数据,以确定相对于道路平面信息的捕获图像的时间序列之间的至少一个单应性,并使得该时间序列的至少一个图像基于所述单应性变形以与该时间序列的另一图像对齐,以基于该时间序列产生经预处理的一组图像;预处理该组传入数据,以产生该至少一个车载相机的运动的图像格式表示;并且提供经预处理的一组图像以及运动的图像格式表示作为机器学习(ML)系统的输入,其中所述ML系统配置为基于输入产生代表该道路的结构的地图。
在示例198中,示例197的主题包括,其中,至少一个视场包括由单个相机捕获的单个前向视场。
在示例199中,示例197-198的主题包括,其中,至少一个视场包括由多个相机捕获的前向视场。
在示例200中,示例197-199的主题包括,其中,至少一个视场包括由面向不同方向的多个相机捕获的多个重叠视场。
在示例201中,示例197-200的主题包括,其中,该道路的表面的参数模型包括表示垂直于该道路的表面的平面法向量的道路平面信息。
在示例202中,示例197-201的主题包括,其中,该道路的表面的参数模型包括该道路的三维样条曲线模型。
在示例203中,示例197-202的主题包括,其中,该道路的表面的参数模型包括从所述捕获图像的至少一部分中得出的道路平面信息。
在示例204中,示例197-203的主题包括,其中,所述捕获图像的时间序列包括三个连续图像序列,所述三个连续图像包括最近捕获的图像、先前图像、和再先前图像。
在示例205中,示例197-204的主题包括,其中,预处理该组传入数据以产生至少一个车载相机的运动的图像格式表示包括:产生与所述时间序列中的至少一个图像相对应的核点的图像格式表示。
在示例206中,示例197-205的主题包括,其中,预处理该组传入数据以产生至少一个车载相机的运动的图像格式表示包括:产生沿向前方向的平移的当前量度与相机高度的比值。
在示例207中,示例197-206的主题包括,其中,所述自我运动信息是基于由车辆的运动传感器获得的测量的。
在示例208中,示例197-207的主题包括,其中,所述自我运动信息表示车辆的旋转和平移运动。
在示例209中,示例197-208的主题包括,其中,表示由ML系统产生的道路的结构的地图包括道路模型,该道路模型包括基于道路表面高度的值的映射。
在示例210中,示例209的主题包括,其中,基于道路表面高度的值的映射包括道路表面高度与距观察点的距离的比值。
示例211是至少一种机器可读介质,包括用于从沿道路行驶的车辆测量道路的结构的指令,所述指令当被处理电路执行时使得所述处理电路执操作,包括:读取一组传入数据,该组传入数据包括:(a)表示至少一个视场的捕获图像的时间序列,该至少一个视场包括由至少一个车载相机捕获的所述道路的一部分;(b)表示至少一台车载相机的实际运动的自我运动信息;(c)该道路的表面的参数模型;预处理该组传入数据,以确定相对于道路平面信息的捕获图像的时间序列之间的至少一个单应性,并使得该时间序列的至少一个图像基于所述单应性变形以与该时间序列的另一图像对齐,以基于该时间序列产生经预处理的一组图像;预处理该组传入数据,以产生该至少一个车载相机的运动的图像格式表示;并且提供经预处理的一组图像以及运动的图像格式表示作为机器学习(ML)系统的输入,其中所述ML系统配置为基于输入产生代表该道路的结构的地图。
在示例212中,示例211的主题包括,其中,至少一个视场包括由单个相机捕获的单个前向视场。
在示例213中,示例211-212的主题包括,其中,至少一个视场包括由多个相机捕获的前向视场。
在示例214中,示例211-213的主题包括,其中,至少一个视场包括由面向不同方向的多个相机捕获的多个重叠视场。
在示例215中,示例211-214的主题包括,其中,该道路的表面的参数模型包括表示垂直于该道路的表面的平面法向量的道路平面信息。
在示例216中,示例211-215的主题包括,其中,该道路的表面的参数模型包括该道路的三维样条曲线模型。
在示例217中,示例211-216的主题包括,其中,该道路的表面的参数模型包括从所述捕获图像的至少一部分中得出的道路平面信息。
在示例218中,示例211-217的主题包括,其中,所述捕获图像的时间序列包括三个连续图像序列,所述三个连续图像包括最近捕获的图像、先前图像、和再先前图像。
在示例219中,示例211-218的主题包括,其中,预处理该组传入数据以产生至少一个车载相机的运动的图像格式表示包括:产生与所述时间序列中的至少一个图像相对应的核点的图像格式表示。
在示例220中,示例211-219的主题包括,其中,预处理该组传入数据以产生至少一个车载相机的运动的图像格式表示包括:产生沿向前方向的平移的当前量度与相机高度的比值。
在示例221中,示例211-220的主题包括,其中,所述自我运动信息是基于由车辆的运动传感器获得的测量的。
在示例222中,示例211-221的主题包括,其中,所述自我运动信息表示车辆的旋转和平移运动。
在示例223中,示例211-222的主题包括,其中,表示由ML系统产生的道路的结构的地图包括道路模型,该道路模型包括基于道路表面高度的值的映射。
在示例224中,示例223的主题包括,其中,基于道路表面高度的值的映射包括道路表面高度与距观察点的距离的比值。
示例225是用于从沿道路行驶的车辆测量道路结构的系统,该系统包括:用于读取一组传入数据的装置,该组传入数据包括:(a)表示至少一个视场的捕获图像的时间序列,该至少一个视场包括由至少一个车载相机捕获的所述道路的一部分;(b)表示至少一台车载相机的实际运动的自我运动信息;(c)该道路的表面的参数模型;用于以下操作的装置:预处理该组传入数据,以确定相对于道路平面信息的捕获图像的时间序列之间的至少一个单应性,并使得该时间序列的至少一个图像基于所述单应性变形以与该时间序列的另一图像对齐,以基于该时间序列产生经预处理的一组图像;用于预处理该组传入数据以产生该至少一个车载相机的运动的图像格式表示的装置;以及用于提供经预处理的一组图像以及运动的图像格式表示作为机器学习(ML)系统的输入的装置,其中所述ML系统被配置为基于输入产生代表该道路的结构的地图。
在示例226中,示例225的主题包括,其中,至少一个视场包括由单个相机捕获的单个前向视场。
在示例227中,示例225-226的主题包括,其中,至少一个视场包括由多个相机捕获的前向视场。
在示例228中,示例225-227的主题包括,其中,至少一个视场包括由面向不同方向的多个相机捕获的多个重叠视场。
在示例229中,示例225-228的主题包括,其中,该道路的表面的参数模型包括表示垂直于该道路的表面的平面法向量的道路平面信息。
在示例230中,示例225-229的主题包括,其中,该道路的表面的参数模型包括该道路的三维样条曲线模型。
在示例231中,示例225-230的主题包括,其中,该道路的表面的参数模型包括从所述捕获图像的至少一部分中得出的道路平面信息。
在示例232中,示例225-231的主题包括,其中,所述捕获图像的时间序列包括三个连续图像序列,所述三个连续图像包括最近捕获的图像、先前图像、和再先前图像。
在示例233中,示例225-232的主题包括,其中,用于预处理该组传入数据以产生至少一个车载相机的运动的图像格式表示的装置包括:用于产生与所述时间序列中的至少一个图像相对应的核点的图像格式表示的装置。
在示例234中,示例225-233的主题包括,其中,用于预处理该组传入数据以产生至少一个车载相机的运动的图像格式表示的装置包括:用于产生沿向前方向的平移的当前量度与相机高度的比值的装置。
在示例235中,示例225-234的主题包括,其中,所述自我运动信息是基于由车辆的运动传感器获得的测量的。
在示例236中,示例225-235的主题包括,其中,所述自我运动信息表示车辆的旋转和平移运动。
在示例237中,示例225-236的主题包括,其中,表示由ML系统产生的道路的结构的地图包括道路模型,该道路模型包括基于道路表面高度的值的映射。
在示例238中,示例237的主题包括,其中,基于道路表面高度的值的映射包括道路表面高度与距观察点的距离的比值。
示例239是一种用于在沿道路行驶的车辆中使用的机器视觉系统的装置,该装置包括:输入,用于读取表示至少一个视场的图像的时间序列,该至少一个视场包括由至少一个车载相机捕获的所述道路的一部分;以及耦合到所述输入的道路结构测量系统,该道路结构测量系统包括:第一深度神经网络(DNN),其被配置为接收基于所述图像的时间序列的图像格式的输入;其中该第一DNN被配置有从训练过程中得出的计算参数,其中:训练数据被输入到训练DNN,该训练数据包括具有捕获的训练图像的时间序列和对应的自我运动测量的第一部分,其中所述训练DNN基于对第一部分的正向传播处理的产生测试结果,其中,正向传播处理包括应用可由训练DNN训练的计算参数;基于多个不同损失分量的集合生成多模式损失函数,多个不同损失分量包括基于训练数据的第一部分的第一损失分量和基于训练数据的第二部分的第二损失分量,该训练数据的第二部分具有所述第一部分中没有的至少一个捕获图像或自我运动测量;基于测试结果来评估多模式损失函数以产生损失值,并根据训练过程细化可训练的计算参数以降低损失值;提供经细化的可训练参数以配置所述第一DNN。
在示例240中,示例239的主题包括,其中,所述训练过程包括利用梯度下降训练使得所述损失函数通过所述训练DNN反向传播。
在示例241中,示例239-240的主题包括,其中,将由第一DNN接收的图像格式的输入包括:图像的时间序列;格式化为图像的核点信息,其中该核点信息包括表示它们各自距核点距离的点;以及格式化为图像的运动信息,其中该运动信息包括表示沿向前方向的平移的当前量度与相机高度的比值的点。
在示例242中,示例239-241的主题包括,其中,第一DNN是卷积DNN,其包括多个层,这些层包括卷积层、激活层、和池化层;其中,第一DNN包括馈送到不同层的多个输入端口,不同层包括第一输入层和不同于第一输入层的第二输入层;其中第一图像格式的输入将被提供给第一输入层,并且其中第二图像格式的输入将被提供给第二输入层。
在示例243中,示例242的主题包括,其中,第一输入包括图像的时间序列,并且其中,第二输入包括表示车辆的运动的图像格式的运动信息。
在示例244中,示例239-243的主题包括,其中,第一DNN是卷积DNN,其包括卷积部分和去卷积部分。
在示例245中,示例244的主题包括,其中,第一DNN包括多个层,每个层产生特征图,并将特征图前向传递到随后的层,以沿着前向传播路径进行处理;其中卷积部分的连续层将操作来逐渐减小其相应特征图的分辨率,同时增加沿前向传播路径的特征图的维数;其中,去卷积的去卷积部分的连续层将操作来逐渐增加其对应特征图的分辨率,同时减小沿前向传播路径的特征图的维数。
在示例246中,示例245的主题包括,其中,第一DNN包括至少一个旁路路径,该路径被布置为促进特征图沿着前向传播路径从前一层传递到后一层,同时跳过一个或位于这些在前层和在后层之间的中间层。
在示例247中,示例245-246的主题包括,其中,第一DNN包括位于卷积部分和去卷积部分之间的瓶颈网络部分,其中,与第一DNN的其他层相比,瓶颈网络部分包括具有相对较低分辨率的至少一个层。
在示例248中,示例247的主题包括,其中,瓶颈部分包括被配置为接受图像格式的运动标记和图像格式的核点位置数据的输入。
在示例249中,示例239-248的主题包括,其中,第一DNN产生代表道路的结构的地图作为其输出,该地图包括道路模型,该道路模型包括基于道路表面高度的值的映射。
在示例250中,示例248-249的主题包括,其中,基于道路表面高度的值映射包括道路表面高度与距观察点的距离的比值。
在示例251中,示例239-250的主题包括,其中,第一DNN具有与训练DNN相同的架构。
在示例252中,示例239-251的主题包括,其中,第一损失分量包括基于训练图像的时间序列和对应自我运动测量的摄影测量损失分量,从训练图像的时间序列和对应自我运动测量产生测试结果。
在示例253中,示例252的主题包括:其中,第二损失分量基于在与该训练图像的时间序列的图像中任一图像被捕获的时间不同的时间被捕获的至少一个过去或未来训练图像。
在示例254中,示例252-253的主题包括,其中,第二损失成分基于在与从中产生了测试结果的自我运动测量中任一测量被获得的时间不同的时间做出的至少一个过去或未来自我运动测量。
在示例255中,示例252-254的主题包括,其中,第二损失分量基于至少一个未来道路结构评估,该未来道路结构评估基于从训练数据的一部分中获得的捕获图像和对应的测得的自我运动,该训练数据的一部分是在比该训练图像的时间序列中任一图像被捕获的时间更晚的时间捕获的。
示例256是用于在沿着潮湿道路行驶的车辆中使用的机器视觉系统的装置,该装置包括:输入以读取表示至少一个视场的图像的时间序列,该至少由一个视场包括由至少一个车载相机捕获的道路的一部分;以及耦合到所述输入的道路结构测量系统,该道路结构测量系统包括第一深度神经网络(DNN),其被配置为接收基于图像的时间序列的图像格式的输入;其中,当根据单应性使得该图像的时间序列中的至少第一图像变形并且与该图像的时间序列中的第一图像对齐以揭示图像序列中的第一图像和第二图像之间的残余运动时,该残余运动至少指示(a)道路表面形貌的变化,以及(b)来自道路表面的镜面反射;并且其中,该道路结构测量系统被配置为通过车辆表面的镜面反射区分出道路表面形貌的变化以产生形貌测量,该形貌测量准确到当车辆以五十千米每小时的速度行驶时在距车辆至少十米的距离处的道路表面高度变化的三厘米以内。
在示例257中,示例256的主题包括,其中,第一DNN是卷积DNN,其包括卷积部分和去卷积部分。
在示例258中,示例257的主题包括:其中,第一DNN包括多个层,每个层产生特征图,并将特征图前向传递到随后的层,以沿着前向传播路径进行处理;其中卷积部分的连续层将操作来逐渐减小其相应特征图的分辨率,同时增加沿前向传播路径的特征图的维数;其中,去卷积的去卷积部分的连续层将操作来逐渐增加其对应特征图的分辨率,同时减小沿前向传播路径的特征图的维数。
在示例259中,示例258的主题包括:其中,第一DNN包括至少一个旁路路径,该路径被布置为促进特征图沿着前向传播路径从前一层传递到后一层,同时跳过一个或位于这些在前层和在后层之间的中间层。
在示例260中,示例258-259的主题包括:其中,第一DNN包括位于卷积部分和去卷积部分之间的瓶颈网络部分,其中,与第一DNN的其他层相比,瓶颈网络部分包括具有相对较低分辨率的至少一个层。
在示例261中,示例260的主题包括,其中,瓶颈部分包括被配置为接受图像格式的运动标记和图像格式的核点位置数据的输入。
在示例262中,示例256-261的主题包括,其中,第一DNN产生代表道路的结构的地图作为其输出,该地图包括道路模型,该道路模型包括基于道路表面高度的值的映射。
在示例263中,示例261-262的主题包括,其中,基于道路表面高度的值映射包括道路表面高度与距观察点的距离的比值。
在示例264中,示例256-263的主题包括,其中,第一DNN被配置有从训练过程中得出的计算参数,其中:训练数据被输入到训练DNN,该训练数据包括具有捕获的训练图像的时间序列和对应的自我运动测量的第一部分,其中所述训练DNN基于对第一部分的正向传播处理的产生测试结果,其中,正向传播处理包括应用可由训练DNN训练的计算参数;基于多个不同损失分量的集合生成多模式损失函数,多个不同损失分量包括基于训练数据的第一部分的第一损失分量和基于训练数据的第二部分的第二损失分量,该训练数据的第二部分具有所述第一部分中没有的至少一个捕获图像或自我运动测量;基于测试结果来评估多模式损失函数以产生损失值,并根据训练过程细化可训练的计算参数以降低损失值;提供经细化的可训练参数以配置所述第一DNN。
在示例265中,示例264的主题包括,其中,所述训练过程包括利用梯度下降训练使得所述损失函数通过所述训练DNN反向传播。
在示例266中,示例256-265的主题包括,其中,将由第一DNN接收的图像格式的输入包括:图像的时间序列;格式化为图像的核点信息,其中该核点信息包括表示它们各自距核点距离的点;以及格式化为图像的运动信息,其中该运动信息包括表示沿向前方向的平移的当前量度与相机高度的比值的点。
在示例267中,示例256-266的主题包括:其中,第一DNN是卷积DNN,其包括多个层,这些层包括卷积层、激活层、和池化层;其中,第一DNN包括馈送到不同层的多个输入端口,不同层包括第一输入层和不同于第一输入层的第二输入层;其中第一图像格式的输入将被提供给第一输入层,并且其中第二图像格式的输入将被提供给第二输入层。
在示例268中,示例267的主题包括,其中,第一输入包括图像的时间序列,并且其中,第二输入包括表示车辆的运动的图像格式的运动信息。
在示例269中,示例264-268的主题包括,其中,其中,第一DNN具有与训练DNN相同的架构。
在示例270中,示例264-269的主题包括,其中,第一损失分量包括基于训练图像的时间序列和对应自我运动测量的摄影测量损失分量,从训练图像的时间序列和对应自我运动测量产生测试结果。
在示例271中,示例270的主题包括,其中,第二损失分量基于在与该训练图像的时间序列的图像中任一图像被捕获的时间不同的时间被捕获的至少一个过去或未来训练图像。
在示例272中,示例270-271的主题包括,其中,第二损失成分基于在与从中产生了测试结果的自我运动测量中任一测量被获得的时间不同的时间做出的至少一个过去或未来自我运动测量。
在示例273中,示例270-272的主题包括,其中,第二损失分量基于至少一个未来道路结构评估,该未来道路结构评估基于从训练数据的一部分中获得的捕获图像和对应的测得的自我运动,该训练数据的一部分是在比该训练图像的时间序列中任一图像被捕获的时间更晚的时间捕获的。
示例274是至少一种机器可读介质,其包括指令,所述指令当被处理电路执行时,使得所述处理电路执行用于实现如示例1-273中任一示例所述的操作。
示例275是一种设备,包括用于实现如示例1-273中任一示例的装置。
示例276是用于实现示例1-273中任一示例的系统。
示例277是用于实现示例1-273中任一示例的方法。
上面的详细描述包括对附图的引用,这些附图形成了详细描述的一部分。附图通过说明的方式示出了可以实践的具体实施例。这些实施例在本文中也被称为“示例”。这些示例可以包括除了示出或描述的那些元件之外的元件。然而,本发明的发明人还设想了仅提供示出或描述的那些元件的示例。此外,本发明的发明人设想了使用针对特定示例(或其一个或多个方面)或针对本文示出或描述的其他示例(或其一个或多个方面)示出或描述的那些元件(或其一个或多个方面)的任何组合或排列的示例。
本文档中引用的所有出版物、专利、和专利文件都通过引用以其整体并入本文,就像通过引用将其单独并入一样。在本文档与通过引用并入的那些文档之间的用法不一致的情况下,应将所并入的(一个或多个)引用中的用法视为对本文档的补充;对于冲突的不一致之处,以本文档中的用法为准。
在本文档中,如专利文件中常用的那样,独立于“至少一个”或“一个或多个”的任何其他实例或用法,术语“一”或“一个”包括一个或不止一个。在本文档中,术语“或”用于指代非排他性的,从而“A或B”包括“A但不包含B”,“B但不包含A”,以及“A和B”,除非另有说明。在所附权利要求中,术语“包含”和“在其中”被用作相应术语“包括”和“其中”的简明英语等效。此外,在所附权利要求中,术语“包含”和“包括”是开放式的,也就是说,除权利要求中跟在此术语之后列出的那些元素之外,还包括其他元素的系统、设备、物品、或处理仍被认为落入该权利要求的范围。此外,在所附权利要求中,术语“第一”、“第二”和“第三”等仅用作标签,并且不旨在对其对象强加数值要求。
上面的描述旨在是说明性的,而不是限制性的。例如,上述示例(或其一个或多个方面)可以彼此组合使用。例如,可以由本领域的普通技术人员在回顾以上描述之后使用其他实施例。摘要是为了允许读者快速地确定技术公开的性质,并且在摘要是在理解其将不会被用来解释或限制权利要求的范围或含义的情况下提交的。另外,在以上详细描述中,各种特征可以被分组在一起以简化本公开。这不应被解释为意在使未要求保护的公开特征对于任何权利要求都是必不可少的。而是,发明性主题可以体现于少于特定公开实施例的所有特征。因此,以下权利要求据此被结合到详细描述中,其中每个权利要求独立地作为单独的实施例。应当参考所附权利要求以及这些权利要求被赋予的等同物的全部范围来确定实施例的范围。
Claims (22)
1.一种用于对道路表面进行建模的设备,所述设备包括:
硬件传感器接口,所述硬件传感器接口用于获得代表道路表面的按时间排序的图像序列,所述图像序列中的一个图像是当前图像;以及
处理电路,所述处理电路用于:
向人工神经网络(ANN)提供数据集以产生场景的三维结构,所述数据集包括:
所述图像序列的一部分,所述图像序列的所述一部分包括所述当前图像;
捕获所述图像序列的传感器的运动;以及
核点;并且
使用所述场景的三维结构对所述道路表面进行建模。
2.根据权利要求1所述的设备,其中,所述核点被提供为与所述当前图像具有相同维数的梯度图像,所述梯度图像中的像素的值表示所述当前图像中的像素距所述核点的距离。
3.根据权利要求2所述的设备,其中,所述梯度图像仅表示距所述核点的水平距离,并且其中,第二梯度图像被提供给所述ANN,以表示距所述核点的竖直距离。
4.根据权利要求1所述的设备,其中,所述传感器的运动被提供为与所述当前图像具有相同维数的恒定值图像。
5.根据权利要求4所述的设备,其中,所述恒定值是所述传感器的前向运动与所述传感器距平面的高度的比值。
6.根据权利要求1所述的设备,其中,为了对所述道路表面进行建模,所述处理电路通过将所述场景的三维结构与来自第二ANN的输出进行比较来识别反射区域,所述第二ANN被训练为接受所述图像序列的所述一部分并产生第二三维结构,其中,与训练所述第一ANN相比,训练所述第二ANN在所述图像序列的所述一部分中使用更多的摄影测量损失。
7.根据权利要求1所述的设备,其中,所述处理电路被配置为使用所述三维结构来调用第二ANN,以确定特征表示在所述道路表面的环境内移动的对象还是不移动的对象。
8.根据权利要求1所述的设备,其中,所述ANN是卷积神经网络(CNN)。
9.根据权利要求8所述的设备,其中,所述传感器的运动和所述核点在瓶颈层处被提供给所述CNN。
10.根据权利要求1所述的设备,其中,所述ANN是利用无监督训练技术来训练的,在所述无监督训练技术中,误差是通过测量未来图像的模型和所述未来图像之间的差异来确定的,所述未来图像的模型是通过对所述未来图像之前的图像进行伽马变形产生的。
11.根据权利要求1所述的设备,其中,所述ANN是利用无监督训练技术来训练的,在所述无监督训练技术中,误差是由两个不同时间的两个图像之间的重叠片段的伽马的差异来确定的,其中对第一图像执行推断,并且其中所述重叠片段在图像中更靠近所述传感器。
12.一种用于对道路表面进行建模的方法,所述方法包括:
获得代表道路表面的按时间排序的图像序列,所述图像序列中的一个图像是当前图像;
向人工神经网络(ANN)提供数据集以产生场景的三维结构,所述数据集包括:
所述图像序列的一部分,所述图像序列的所述一部分包括所述当前图像;
捕获所述图像序列的传感器的运动;以及
核点;以及
使用所述场景的三维结构对所述道路表面进行建模。
13.根据权利要求12所述的方法,其中,所述核点被提供为与所述当前图像具有相同维数的梯度图像,所述梯度图像中的像素的值表示所述当前图像中的像素距所述核点的距离。
14.根据权利要求13所述的方法,其中,所述梯度图像仅表示距所述核点的水平距离,并且其中,第二梯度图像被提供给所述ANN,以表示距所述核点的竖直距离。
15.根据权利要求12所述的方法,其中,所述传感器的运动被提供为与所述当前图像具有相同维数的恒定值图像。
16.根据权利要求15所述的方法,其中,所述恒定值是所述传感器的前向运动与所述传感器距平面的高度的比值。
17.根据权利要求12所述的方法,其中,对所述道路表面进行建模包括:通过将所述场景的三维结构与来自第二ANN的输出进行比较来识别反射区域,所述第二ANN被训练为接受所述图像序列的所述一部分并产生第二三维结构,其中,与训练所述第一ANN相比,训练所述第二ANN在所述图像序列的所述一部分中使用更多的摄影测量损失。
18.根据权利要求12所述的方法,包括:使用所述三维结构来调用第二ANN,以确定所述特征表示在所述道路表面的环境内移动的对象还是不移动的对象。
19.根据权利要求12所述的方法,其中,所述ANN是卷积神经网络(CNN)。
20.根据权利要求19所述的方法,其中,所述传感器的运动和所述核点在瓶颈层处被提供给所述CNN。
21.根据权利要求12所述的方法,其中,利用无监督训练技术来训练所述ANN,在所述无监督训练技术中,通过测量未来图像的模型和所述未来图像之间的差异来确定误差,通过对所述未来图像之前的图像进行伽马变形来产生所述未来图像的模型。
22.根据权利要求12所述的方法,其中,利用无监督训练技术来训练所述ANN,在所述无监督训练技术中,由两个不同时间的两个图像之间的重叠片段的伽马的差异来确定误差,其中,对第一图像执行推断,并且其中,所述重叠片段在图像中更靠近所述传感器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210872440.0A CN115393536A (zh) | 2018-04-18 | 2019-04-18 | 利用相机进行车辆环境建模 |
Applications Claiming Priority (11)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201862659470P | 2018-04-18 | 2018-04-18 | |
US62/659,470 | 2018-04-18 | ||
US201862662965P | 2018-04-26 | 2018-04-26 | |
US62/662,965 | 2018-04-26 | ||
US201862663529P | 2018-04-27 | 2018-04-27 | |
US62/663,529 | 2018-04-27 | ||
US201862769236P | 2018-11-19 | 2018-11-19 | |
US201862769241P | 2018-11-19 | 2018-11-19 | |
US62/769,236 | 2018-11-19 | ||
US62/769,241 | 2018-11-19 | ||
PCT/IB2019/000506 WO2019202397A2 (en) | 2018-04-18 | 2019-04-18 | Vehicle environment modeling with a camera |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210872440.0A Division CN115393536A (zh) | 2018-04-18 | 2019-04-18 | 利用相机进行车辆环境建模 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111566441A true CN111566441A (zh) | 2020-08-21 |
CN111566441B CN111566441B (zh) | 2022-08-09 |
Family
ID=68236006
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980004560.5A Active CN111566441B (zh) | 2018-04-18 | 2019-04-18 | 利用相机进行车辆环境建模 |
CN202210872440.0A Pending CN115393536A (zh) | 2018-04-18 | 2019-04-18 | 利用相机进行车辆环境建模 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210872440.0A Pending CN115393536A (zh) | 2018-04-18 | 2019-04-18 | 利用相机进行车辆环境建模 |
Country Status (6)
Country | Link |
---|---|
US (3) | US10872433B2 (zh) |
EP (1) | EP3673233A4 (zh) |
JP (2) | JP7039727B2 (zh) |
KR (3) | KR102265703B1 (zh) |
CN (2) | CN111566441B (zh) |
WO (1) | WO2019202397A2 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113104033A (zh) * | 2021-05-11 | 2021-07-13 | 东风柳州汽车有限公司 | 低速自动驾驶方法、装置、设备及存储介质 |
CN113269969A (zh) * | 2021-04-16 | 2021-08-17 | 重庆电子工程职业学院 | 基于智慧交通的人工智能图像处理方法及大数据云服务器 |
US11816991B2 (en) | 2018-04-18 | 2023-11-14 | Mobileye Vision Technologies Ltd. | Vehicle environment modeling with a camera |
Families Citing this family (87)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10181195B2 (en) * | 2015-12-28 | 2019-01-15 | Facebook, Inc. | Systems and methods for determining optical flow |
WO2018176000A1 (en) | 2017-03-23 | 2018-09-27 | DeepScale, Inc. | Data synthesis for autonomous control systems |
US10671349B2 (en) | 2017-07-24 | 2020-06-02 | Tesla, Inc. | Accelerated mathematical engine |
US11409692B2 (en) | 2017-07-24 | 2022-08-09 | Tesla, Inc. | Vector computational unit |
US11893393B2 (en) | 2017-07-24 | 2024-02-06 | Tesla, Inc. | Computational array microprocessor system with hardware arbiter managing memory requests |
US11157441B2 (en) | 2017-07-24 | 2021-10-26 | Tesla, Inc. | Computational array microprocessor system using non-consecutive data formatting |
US10802489B1 (en) | 2017-12-29 | 2020-10-13 | Apex Artificial Intelligence Industries, Inc. | Apparatus and method for monitoring and controlling of a neural network using another neural network implemented on one or more solid-state chips |
US11561791B2 (en) | 2018-02-01 | 2023-01-24 | Tesla, Inc. | Vector computational unit receiving data elements in parallel from a last row of a computational array |
US11958485B2 (en) * | 2018-03-01 | 2024-04-16 | Jaguar Land Rover Limited | Vehicle control method and apparatus |
US20210387573A1 (en) * | 2018-04-30 | 2021-12-16 | Indigo Technologies, Inc. | Methods and apparatus to adjust a reactive system based on a sensory input and vehicles incorporating same |
JP6766844B2 (ja) * | 2018-06-01 | 2020-10-14 | 株式会社デンソー | 物体識別装置、移動体用システム、物体識別方法、物体識別モデルの学習方法及び物体識別モデルの学習装置 |
US11215999B2 (en) | 2018-06-20 | 2022-01-04 | Tesla, Inc. | Data pipeline and deep learning system for autonomous driving |
US11361457B2 (en) | 2018-07-20 | 2022-06-14 | Tesla, Inc. | Annotation cross-labeling for autonomous control systems |
US11636333B2 (en) | 2018-07-26 | 2023-04-25 | Tesla, Inc. | Optimizing neural network structures for embedded systems |
US11562231B2 (en) | 2018-09-03 | 2023-01-24 | Tesla, Inc. | Neural networks for embedded devices |
US10867390B2 (en) * | 2018-09-10 | 2020-12-15 | Arm Limited | Computer vision processing |
AU2019357615B2 (en) | 2018-10-11 | 2023-09-14 | Tesla, Inc. | Systems and methods for training machine models with augmented data |
US11196678B2 (en) | 2018-10-25 | 2021-12-07 | Tesla, Inc. | QOS manager for system on a chip communications |
US11555903B1 (en) | 2018-11-30 | 2023-01-17 | Zoox, Inc. | Sensor calibration using dense depth maps |
US10916035B1 (en) * | 2018-11-30 | 2021-02-09 | Zoox, Inc. | Camera calibration using dense depth maps |
US11816585B2 (en) | 2018-12-03 | 2023-11-14 | Tesla, Inc. | Machine learning models operating at different frequencies for autonomous vehicles |
US11537811B2 (en) | 2018-12-04 | 2022-12-27 | Tesla, Inc. | Enhanced object detection for autonomous vehicles based on field view |
KR20200069084A (ko) * | 2018-12-06 | 2020-06-16 | 팅크웨어(주) | 도로 제한 속도 판단 방법, 도로 제한 속도 판단 장치, 전자 기기, 컴퓨터 프로그램 및 컴퓨터 판독 가능한 기록 매체 |
US11610117B2 (en) | 2018-12-27 | 2023-03-21 | Tesla, Inc. | System and method for adapting a neural network model on a hardware platform |
US11150664B2 (en) | 2019-02-01 | 2021-10-19 | Tesla, Inc. | Predicting three-dimensional features for autonomous driving |
US10997461B2 (en) | 2019-02-01 | 2021-05-04 | Tesla, Inc. | Generating ground truth for machine learning from time series elements |
US11373532B2 (en) * | 2019-02-01 | 2022-06-28 | Hitachi Astemo, Ltd. | Pothole detection system |
US11567514B2 (en) | 2019-02-11 | 2023-01-31 | Tesla, Inc. | Autonomous and user controlled vehicle summon to a target |
US10956755B2 (en) | 2019-02-19 | 2021-03-23 | Tesla, Inc. | Estimating object properties using visual image data |
JP2020147139A (ja) * | 2019-03-13 | 2020-09-17 | 本田技研工業株式会社 | 車両制御装置、車両制御方法、およびプログラム |
US11410328B1 (en) * | 2019-04-30 | 2022-08-09 | Apple Inc. | Techniques for maintaining feature point maps |
US11748445B1 (en) | 2019-04-30 | 2023-09-05 | Apple Inc. | Techniques for managing feature maps |
US11803981B2 (en) | 2019-05-30 | 2023-10-31 | Mobileye Vision Technologies Ltd. | Vehicle environment modeling with cameras |
AU2020317303B2 (en) * | 2019-07-22 | 2023-12-07 | Nec Corporation | Information processing device, data generation method, and program |
US11600174B2 (en) * | 2019-07-22 | 2023-03-07 | Pony A1 Inc. | Systems and methods for autonomous road condition reporting |
US11403850B2 (en) * | 2019-07-24 | 2022-08-02 | Honda Motor Co., Ltd. | System and method for providing unsupervised domain adaptation for spatio-temporal action localization |
US10600210B1 (en) * | 2019-07-25 | 2020-03-24 | Second Spectrum, Inc. | Data processing systems for real-time camera parameter estimation |
US11264009B2 (en) * | 2019-09-13 | 2022-03-01 | Mitsubishi Electric Research Laboratories, Inc. | System and method for a dialogue response generation system |
US11367290B2 (en) | 2019-11-26 | 2022-06-21 | Apex Artificial Intelligence Industries, Inc. | Group of neural networks ensuring integrity |
US20210183088A1 (en) * | 2019-12-13 | 2021-06-17 | Nvidia Corporation | Depth estimation using a neural network |
AU2021208647A1 (en) * | 2020-01-17 | 2022-09-15 | Percipient.ai Inc. | Systems for multiclass object detection and alerting and methods therefor |
KR20210106217A (ko) * | 2020-02-20 | 2021-08-30 | 삼성전자주식회사 | 인공 신경망의 재구성을 수행하는 프로세서, 이를 포함하는 전자 장치 및 프로세서의 동작 방법 |
KR20210106807A (ko) * | 2020-02-21 | 2021-08-31 | 현대자동차주식회사 | 노면 분류 장치 및 이를 이용한 차량의 터레인 모드 제어 시스템 |
US11436842B2 (en) * | 2020-03-13 | 2022-09-06 | Argo AI, LLC | Bulb mask representation for traffic light classification |
DE102020204321A1 (de) | 2020-04-02 | 2021-10-07 | Volkswagen Aktiengesellschaft | Verfahren zum Betreiben eines Fahrerassistenzsystems und Fahrerassistenzsystem für ein Fahrzeug |
DE102020111557A1 (de) | 2020-04-28 | 2021-10-28 | Bayerische Motoren Werke Aktiengesellschaft | Vorrichtung und Verfahren zur Erkennung eines statischen Objektes |
DE102021111446A1 (de) * | 2020-05-05 | 2021-11-11 | Nvidia Corporation | Objektdetektion unter verwenden von planarer homographie und selbst-überwachtem szenenstruktur verständnis |
US11830160B2 (en) * | 2020-05-05 | 2023-11-28 | Nvidia Corporation | Object detection using planar homography and self-supervised scene structure understanding |
KR102305673B1 (ko) * | 2020-05-12 | 2021-09-28 | 한양대학교 산학협력단 | 카메라와 v2v를 이용한 주변차량 차선변경 의도 및 경로 예측 방법 |
CN111640330A (zh) * | 2020-05-29 | 2020-09-08 | 深圳市元征科技股份有限公司 | 一种基于边缘计算的防碰撞方法及相关装置 |
US11551363B2 (en) * | 2020-06-04 | 2023-01-10 | Toyota Research Institute, Inc. | Systems and methods for self-supervised residual flow estimation |
KR102173419B1 (ko) * | 2020-07-14 | 2020-11-03 | 주식회사 아프로시스템즈 | 관심 검지 영역 확장 기법을 이용한 적응적 물체 검지 시스템 |
US11227396B1 (en) * | 2020-07-16 | 2022-01-18 | Meta Platforms, Inc. | Camera parameter control using face vectors for portal |
EP4220583A1 (en) | 2020-07-16 | 2023-08-02 | Mobileye Vision Technologies Ltd. | Systems and methods for dynamic road geometry modeling and navigation |
US20220111862A1 (en) * | 2020-08-17 | 2022-04-14 | Autobrains Technologies Ltd | Determining driving features using context-based narrow ai agents selection |
US11615544B2 (en) * | 2020-09-15 | 2023-03-28 | Toyota Research Institute, Inc. | Systems and methods for end-to-end map building from a video sequence using neural camera models |
US11494927B2 (en) | 2020-09-15 | 2022-11-08 | Toyota Research Institute, Inc. | Systems and methods for self-supervised depth estimation |
US11910092B2 (en) * | 2020-10-01 | 2024-02-20 | Black Sesame Technologies Inc. | Panoramic look-around view generation method, in-vehicle device and in-vehicle system |
US20220161786A1 (en) * | 2020-11-24 | 2022-05-26 | Hyundai Motor Company | System for evaluating risk values associated with object on road for vehicle and method for the same |
US11673581B2 (en) * | 2020-12-11 | 2023-06-13 | Waymo Llc | Puddle occupancy grid for autonomous vehicles |
US20240053167A1 (en) * | 2020-12-22 | 2024-02-15 | ClearMotion, Inc. | System and method for road feature detection |
CN116057578A (zh) * | 2021-03-01 | 2023-05-02 | 移动眼视力科技有限公司 | 利用相机进行车辆环境建模 |
JP7256835B2 (ja) * | 2021-03-24 | 2023-04-12 | 本田技研工業株式会社 | 画像処理装置 |
DE102021107904A1 (de) * | 2021-03-29 | 2022-09-29 | Conti Temic Microelectronic Gmbh | Verfahren und System zur Bestimmung der Bodenebene mit einem künstlichen neuronalen Netz |
CN117355871A (zh) * | 2021-04-29 | 2024-01-05 | 御眼视觉技术有限公司 | 多帧图像分割 |
DE102021205852A1 (de) | 2021-06-10 | 2022-12-15 | Robert Bosch Gesellschaft mit beschränkter Haftung | Verfahren und Vorrichtung zum Bereitstellen von Konturdaten hinsichtlich einer Oberflächenkontur einer durch ein Fahrzeug befahrenen Fahrbahnoberfläche und Verfahren und Vorrichtung zum Steuern eines Betriebs eines Fahrzeugs |
CN113313047B (zh) * | 2021-06-11 | 2022-09-06 | 中国科学技术大学 | 一种基于车道结构先验的车道线检测方法及系统 |
EP4105818A1 (en) * | 2021-06-18 | 2022-12-21 | Continental Autonomous Mobility Germany GmbH | Method and system for estimating road lane geometry |
US11995764B2 (en) * | 2021-06-30 | 2024-05-28 | Here Global B.V. | Method, apparatus and computer program product for tunnel detection from a point cloud |
KR20230015114A (ko) * | 2021-07-22 | 2023-01-31 | 삼성전자주식회사 | 차량의 측방 카메라를 이용한 도로의 기울기 결정 방법 및 장치 |
KR102399047B1 (ko) * | 2021-08-12 | 2022-05-18 | (주)에이아이매틱스 | 자율주행에서의 시각적 속성 추정을 위한 시각 정보 처리 방법 및 시스템 |
KR20230031036A (ko) * | 2021-08-26 | 2023-03-07 | (주)서울로보틱스 | 3차원 공간에 대한 점군을 정합하는 방법 및 서버 |
US20230089897A1 (en) * | 2021-09-23 | 2023-03-23 | Motional Ad Llc | Spatially and temporally consistent ground modelling with information fusion |
KR102653972B1 (ko) * | 2021-10-06 | 2024-04-02 | 세종대학교산학협력단 | 그래디언트 부스팅 네트워크를 이용한 단안 영상 기반 깊이 추정 방법 및 장치 |
US20230154013A1 (en) * | 2021-11-18 | 2023-05-18 | Volkswagen Aktiengesellschaft | Computer vision system for object tracking and time-to-collision |
KR102594184B1 (ko) * | 2021-11-19 | 2023-10-27 | 이종현 | 인공 지능 모델을 기반으로 엑스레이 이미지상에서 위험 물체를 검출하는 전자 장치 및 이의 동작 방법 |
DE102021133089A1 (de) | 2021-12-14 | 2023-06-15 | Cariad Se | Vorrichtung zur Ermittlung einer Topographie einer Fahrzeugumgebung, Fahrzeug und Verfahren |
US11999352B2 (en) * | 2021-12-15 | 2024-06-04 | Industrial Technology Research Institute | Method and system for extracting road data and method and system for controlling self-driving car |
US20230215026A1 (en) * | 2022-01-03 | 2023-07-06 | GM Global Technology Operations LLC | On-vehicle spatial monitoring system |
WO2023134873A1 (en) * | 2022-01-17 | 2023-07-20 | Telefonaktiebolaget Lm Ericsson (Publ) | Three-dimensional scanning of an environment having reflective surfaces |
US20230260291A1 (en) * | 2022-02-16 | 2023-08-17 | GM Global Technology Operations LLC | Methods and systems for camera to ground alignment |
US20230256975A1 (en) * | 2022-02-16 | 2023-08-17 | GM Global Technology Operations LLC | Methods and systems for camera to ground alignment |
US20230260157A1 (en) * | 2022-02-16 | 2023-08-17 | GM Global Technology Operations LLC | Methods and systems for camera to ground alignment |
US12008681B2 (en) * | 2022-04-07 | 2024-06-11 | Gm Technology Operations Llc | Systems and methods for testing vehicle systems |
TWI822032B (zh) * | 2022-05-05 | 2023-11-11 | 國立陽明交通大學 | 影片播放系統、可攜式影片播放裝置及影片增強方法 |
WO2023219451A1 (en) * | 2022-05-13 | 2023-11-16 | Samsung Electronics Co., Ltd. | Method and apparatus for recognition of a motion in a video |
KR102526720B1 (ko) * | 2022-07-25 | 2023-04-27 | (주)이노시뮬레이션 | 포인트 클라우드 데이터를 이용한 3차원 가상 환경 모델링 방법 및 이를 실행하는 서버 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102074043A (zh) * | 2011-01-06 | 2011-05-25 | 浙江大学 | 用于车辆动力学研究的三维路面高程数据生成方法 |
EP2757524A1 (en) * | 2013-01-16 | 2014-07-23 | Honda Research Institute Europe GmbH | Depth sensing method and system for autonomous vehicles |
CN103988226A (zh) * | 2011-08-31 | 2014-08-13 | Metaio有限公司 | 用于估计摄像机运动以及用于确定实境三维模型的方法 |
WO2016183074A1 (en) * | 2015-05-10 | 2016-11-17 | Mobileye Vision Technologies Ltd. | Road profile along a predicted path |
CN107430188A (zh) * | 2015-03-31 | 2017-12-01 | 亚马逊技术股份有限公司 | 模块化lidar系统 |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0933216A (ja) | 1995-07-24 | 1997-02-07 | Mitsubishi Electric Corp | 車載用画像処理装置 |
KR100446636B1 (ko) | 2002-11-21 | 2004-09-04 | 삼성전자주식회사 | 이동체의 움직임 및 이동체 전방에 위치한 물체의 3차원정보 측정 기능을 구비한 이동체 및 그 방법 |
KR101188588B1 (ko) | 2008-03-27 | 2012-10-08 | 주식회사 만도 | 모노큘러 모션 스테레오 기반의 주차 공간 검출 장치 및방법 |
US8699754B2 (en) | 2008-04-24 | 2014-04-15 | GM Global Technology Operations LLC | Clear path detection through road modeling |
EP2430615A2 (en) * | 2009-05-08 | 2012-03-21 | Scientific Systems Company Inc. | Method and system for visual collision detection and estimation |
US9118816B2 (en) | 2011-12-06 | 2015-08-25 | Mobileye Vision Technologies Ltd. | Road vertical contour detection |
EP2574511B1 (en) | 2011-09-30 | 2016-03-16 | Honda Research Institute Europe GmbH | Analyzing road surfaces |
US11164394B2 (en) * | 2012-02-24 | 2021-11-02 | Matterport, Inc. | Employing three-dimensional (3D) data predicted from two-dimensional (2D) images using neural networks for 3D modeling applications and other applications |
CN105453153B (zh) * | 2013-08-20 | 2018-07-20 | 哈曼国际工业有限公司 | 交通灯检测 |
KR102059311B1 (ko) * | 2013-12-19 | 2019-12-24 | 애플 인크. | 모바일 디바이스에서의 slam |
WO2016130719A2 (en) * | 2015-02-10 | 2016-08-18 | Amnon Shashua | Sparse map for autonomous vehicle navigation |
US10115024B2 (en) | 2015-02-26 | 2018-10-30 | Mobileye Vision Technologies Ltd. | Road vertical contour detection using a stabilized coordinate frame |
US10024965B2 (en) * | 2015-04-01 | 2018-07-17 | Vayavision, Ltd. | Generating 3-dimensional maps of a scene using passive and active measurements |
CN105069842A (zh) | 2015-08-03 | 2015-11-18 | 百度在线网络技术(北京)有限公司 | 道路三维模型的建模方法和装置 |
CN107850445B (zh) * | 2015-08-03 | 2021-08-27 | 通腾全球信息公司 | 用于生成及使用定位参考数据的方法及系统 |
EP3400556A1 (en) | 2016-01-05 | 2018-11-14 | Mobileye Vision Technologies Ltd. | Systems and methods for estimating future paths |
US10354157B2 (en) | 2016-06-27 | 2019-07-16 | Mobileye Vision Technologies Ltd. | Controlling host vehicle based on detection of a one-way road |
US10546387B2 (en) * | 2017-09-08 | 2020-01-28 | Qualcomm Incorporated | Pose determination with semantic segmentation |
US10535138B2 (en) * | 2017-11-21 | 2020-01-14 | Zoox, Inc. | Sensor data segmentation |
US11080590B2 (en) * | 2018-03-21 | 2021-08-03 | Nvidia Corporation | Stereo depth estimation using deep neural networks |
CN111566441B (zh) | 2018-04-18 | 2022-08-09 | 移动眼视力科技有限公司 | 利用相机进行车辆环境建模 |
-
2019
- 2019-04-18 CN CN201980004560.5A patent/CN111566441B/zh active Active
- 2019-04-18 KR KR1020207034100A patent/KR102265703B1/ko active IP Right Grant
- 2019-04-18 KR KR1020207006196A patent/KR102186299B1/ko active IP Right Grant
- 2019-04-18 WO PCT/IB2019/000506 patent/WO2019202397A2/en active Application Filing
- 2019-04-18 EP EP19787733.5A patent/EP3673233A4/en active Pending
- 2019-04-18 JP JP2020556952A patent/JP7039727B2/ja active Active
- 2019-04-18 US US16/387,969 patent/US10872433B2/en active Active
- 2019-04-18 KR KR1020217017826A patent/KR20210072837A/ko active IP Right Grant
- 2019-04-18 CN CN202210872440.0A patent/CN115393536A/zh active Pending
-
2020
- 2020-11-25 US US17/104,572 patent/US11816991B2/en active Active
-
2022
- 2022-03-09 JP JP2022035929A patent/JP7358540B2/ja active Active
-
2023
- 2023-09-27 US US18/373,528 patent/US20240161622A1/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102074043A (zh) * | 2011-01-06 | 2011-05-25 | 浙江大学 | 用于车辆动力学研究的三维路面高程数据生成方法 |
CN103988226A (zh) * | 2011-08-31 | 2014-08-13 | Metaio有限公司 | 用于估计摄像机运动以及用于确定实境三维模型的方法 |
EP2757524A1 (en) * | 2013-01-16 | 2014-07-23 | Honda Research Institute Europe GmbH | Depth sensing method and system for autonomous vehicles |
CN107430188A (zh) * | 2015-03-31 | 2017-12-01 | 亚马逊技术股份有限公司 | 模块化lidar系统 |
WO2016183074A1 (en) * | 2015-05-10 | 2016-11-17 | Mobileye Vision Technologies Ltd. | Road profile along a predicted path |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11816991B2 (en) | 2018-04-18 | 2023-11-14 | Mobileye Vision Technologies Ltd. | Vehicle environment modeling with a camera |
CN113269969A (zh) * | 2021-04-16 | 2021-08-17 | 重庆电子工程职业学院 | 基于智慧交通的人工智能图像处理方法及大数据云服务器 |
CN113104033A (zh) * | 2021-05-11 | 2021-07-13 | 东风柳州汽车有限公司 | 低速自动驾驶方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
JP2021513173A (ja) | 2021-05-20 |
US20240161622A1 (en) | 2024-05-16 |
EP3673233A2 (en) | 2020-07-01 |
KR102186299B1 (ko) | 2020-12-07 |
JP7039727B2 (ja) | 2022-03-22 |
US20210118161A1 (en) | 2021-04-22 |
KR20210072837A (ko) | 2021-06-17 |
KR20200029049A (ko) | 2020-03-17 |
WO2019202397A8 (en) | 2020-07-23 |
US20190325595A1 (en) | 2019-10-24 |
WO2019202397A2 (en) | 2019-10-24 |
WO2019202397A3 (en) | 2019-11-28 |
CN115393536A (zh) | 2022-11-25 |
KR102265703B1 (ko) | 2021-06-17 |
JP2022069527A (ja) | 2022-05-11 |
US10872433B2 (en) | 2020-12-22 |
KR20200138410A (ko) | 2020-12-09 |
JP7358540B2 (ja) | 2023-10-10 |
EP3673233A4 (en) | 2021-05-19 |
US11816991B2 (en) | 2023-11-14 |
CN111566441B (zh) | 2022-08-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111566441B (zh) | 利用相机进行车辆环境建模 | |
JP7383870B2 (ja) | デバイス、方法、システムおよびコンピュータプログラム | |
US10984261B2 (en) | Systems and methods for curb detection and pedestrian hazard assessment | |
US11508049B2 (en) | Deep neural network processing for sensor blindness detection in autonomous machine applications | |
US20210224556A1 (en) | Real-time detection of lanes and boundaries by autonomous vehicles | |
CN112740268B (zh) | 目标检测方法和装置 | |
US11869253B2 (en) | Vehicle environment modeling with a camera | |
EP3850539B1 (en) | Deep neural network processing for sensor blindness detection in autonomous machine applications | |
Van Crombrugge et al. | Fast Ground Detection for Range Cameras on Road Surfaces Using a Three-Step Segmentation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |