ADAS-车用全景解决方案 - TID3X -2
Loading the player...
将在30s后自动为您播放下一课程
目前下面来介绍一下 TDA3 环视全景的一个解决方案 目前 TDA3 是目前功耗最低 成本最低的一个 3D 全景的解决方案 TDA3 做 3D 全景的几个优势非常明显 首先是对成本和性价比 要求非常高的一些低端 面向于低端市场的一些应用 首先 TDA3x 里面 没有 A 系列的 ARM A 系列的处理器 只有 M 系列处理器 可以认为它的整个系统的架构 和单片机是相似的 另一方面的话 不同频率不同核心数量的选择 可以在 TDA3 里面 也可以分为中高低端三个层次 此外低功耗的一个芯片能力 对散热和整个系统硬件结构 降低了很多很多需求 最后由于 TDA3 中不仅是带有 ARM 的 M 系列处理器 还有 TI 最擅长的DSP处理器EVE处理器 他们都会提供他们最擅长的一些 图像相关的计算 最终实现一个目标检测和车道线检测 运动物体识别等等 额外的图像处理能力 取决于你对额外处理能力的需求 你可以选择 TDA3 系列频率更高 或者说频率更低的一些处理器 快速上手也是一个非常重要的一点 我们目前结合多个第三方 提供了多种平台的一个设计 就像图上所示 TDA3 处理器只有15毫米乘以15毫米 整个板卡的设计将会非常紧凑 右下角是我们的一个第三方设计的一个 环视全景的一个评估平台 这是一个非常小的一个滑板车 在滑板车上附带有四路摄像头 同时接入到 TDA3 中 实现一个 3D 全景 这个滑板车 我们目前是可以在网上订购到的 它具有以下几个特点 首先是它的工业设计 它有防水外壳 可以具体安装到车机上 另一方面的话 它也可以对接不同型号 不同电压的摄像头 此外整个这个参考设计是 使用汽车级元器件进行设计 可以快速的在实车上安装 并且进行测试和调试 而且最重要的是这一套系统 可以再由 VisionSDK 原生支持 不需要做任何的 软件上的一些调整即可运行 下面我们对比一下传统的 GPU 全景 和 TDA3 没有 GPU 的 全景的一个系统框图 首先这里是一个传统 GPU 全景 通常是将摄像头经过 ISP 处理之后 转化成 YUV 格式 通过芯片同轴线 或者说 LVDS 传输到芯片中 由 ARM 的 CortexA 系列的 处理器控制 GPU 进行一些图像的渲染 车模的渲染 最终输出到显示去 可以看到涉及到 ARM 的 A 系列处理器之后 整个系统的发热量 和复杂度有非常高的提升 接下来的话我们看一下 TDA3 全景的一个 BOM 最优的设计 我们将选用输出为 raw data 的传感器 将 raw data 通过 ser 芯片 传输到 TI 提供的四合一的 ser 芯片 也就是 FPD Link 96 系列 然后由 CSI 接口接入到 TDA3 中 有 TDA3 中的 ISP 进行一个分时的一个 ISP 的 raw data 的一个处理 将处理后的结果交由硬件加速器 由硬件加速器 做更进一步的 3D 全景效果 由硬件加速器做完的全景效果 最后会由 DSP 进行贴图 最终输出到屏幕上 也就是说剩余的像 Cortex M4 和 EVE 还有其他剩余的计算资源 都可以用来做其他的一些 图像处理算法 目前我们对 raw sensor 的支持是这样 我们目前已经支持 少数几款车厂和 TIER1 最主流的芯片 在之后的一段时间内 我们将会陆陆续续支持 所有的目前市场上最主流的芯片 最主流的 sensor 下面我们将会挨个看一下 就是目前3D全景和2D全景中 对全景系统的一些 常见系统的一些缺点 而 TDA3 是怎么克服这些缺点 首先是对亮度均衡 有的供应商把亮度均衡作为他们 算法的一个优势之一 而 TDA3 的话 整个系统由于 ISP 使用了 统一的 ISP 进行分时处理 我们的寄存器和包括像曝光时间 或者说是一些白平衡的一些参数 这些参数都是汇集在同一个地方 汇集到同一个地方的好处就是 我可以做相同时间的曝光 这样的话就完全不会出现 两两摄像头之间出现白平衡 或者说是亮度的一个差异 从根本上解决了亮度均衡的一个问题 这也是目前 TDA3 ISP 最明显的一个优势 如果说你仍然是采用 四个分立的 ISP 在摄像头中 他们的曝光时间是完全不可控的 另外你也很难说能够控制四路 图像是在同一时间进行曝光 这个是分立 ISP 可能会带来的问题 而采用统一的 ISP 处理 通过 FPD Link 可以实现 硬件上的信号电平的控制的曝光 以及四路镜头完全相同的曝光时间 可以保证整个系统的亮度的完全均衡 接下来的话是宽动态 有的人可能就会有疑问 就是如果说你采用相同的曝光 那么如果某一路特别亮 某一路特别暗怎么办 这就是 ISP 解决的第二个问题 内置的 ISP 因为收取的是 raw data 的 sensor 所以说可以在芯片中做 非常复杂的宽动态的计算 对这个宽动态的计算 可以保证在相同曝光时间 各个摄像头它对 它的曝光水平是一致的 可以保证相同过渡区域的亮度是一致 但是在高亮区域 将会做一个宽动态的一个处理 在黑暗的区域也会做一个提升的处理 这样既不会显得整个图像有突兀 这样既不会显得整个图像有突兀 也能够充分发挥 ISP 里面宽动态的特性 另一个挑战就是对车模质量的一个挑战 有很多车厂包括客户最终端的消费者 他们对车模的质量有非常高的要求 人们总是不喜欢坐在车里 看到一个像塑料玩具车 一样的车模在旋转 这样的话给人一种不安全感 包括车厂也会要求在 openGL 渲染的时候 需要把光照以及车门 车窗 车轮 包括车内的一些景象 进行一个非常精细化的设计 而这样的设计对 GPU 的负荷提升非常高 在 TDA3 整个3D全景过程中 我们将不会用 GPU 或者说 openGL 来做这件事情 所有的车模我们都会在 PC 机端 离线进行计算 计算完成之后由 DSP 贴图实现 这样的话可以将在 PC 上 我们实现一个非常非常复杂的一个车模 贴至我们现有的一个3D全景中 这样的话可以百分之百回避掉 GPU 它对三角形个数 对光照反射以及像复杂纹理 或者说其它一些定制化的需求 那么如何不使用 GPU 来实现一个3D全景 这个是 TI 目前最领先的一个技术 也是充分发挥了芯片中每一个硬件的功能 在 ISP 的设计之初 我们对鱼眼的畸变 或者说对普通镜头的一个镜头的畸变 有一个硬件的一个畸变矫正加速器 而这个加速器它的输入是一个网格 也就是说你告诉它 它的畸变应该怎么样纠正 它将会把输入的图像 进行一个正确的纠正 然而如果我们对 3D 全景 有一个深度的认识之后 你会发现输入的图像 是一个鱼眼畸变的图像 你需要做的是一个将鱼眼展平的过程 展平之后 你需要再将展平的图像 进行一个透视变换 透视变换之后 再将透视变换的图像 进行一个碗形的变换 形成一个 3D 的碗形 所以说我们跨过这么多步 直接将鱼眼图变换为 3D 的碗形 这也是硬件加速器所支持的一个操作 这样的话 我们将四张输入的鱼眼图像 分别变换成对应的碗的形状 由 DSP 分别贴至他所应该处的位置 并且由 DSP 来处理 他们之间的过渡区域 这些系数都将由 PC 进行计算 计算生成之后存入 DSP 中 也就是说就像这个流程图一样 我们将镜头畸变参数存入 Flash 中 在系统启动过程中 我们会将 Flash 中的这些参数 解压缩到内存中 DDR 中 将这些查找表依次传递给畸变矫正模块 由这个模块进行一个 对鱼眼图像的一个反畸变 并且进行一个碗形的一个变换 最终由 DSP 将车模 以及各个四路之间的一个过渡 最终贴图形成一个3D全景 这一套流程是目前其他车 其他芯片或者说是目前 常见 GPU 方案中所难以见到的 也就是说我们充分发挥了 单片机中一个非常高效的硬件模块 由这个模块来鱼眼变换 做碗形变换 做 GPU 所需要做的事情 下面这些图片是我们 在实际车辆上 和实际的玩具车上 进行的一些测试的抓图 左上角是一个非常常见的一个 车机的一个 UI 界面 我们可以通过点击右侧的 摄像头的标志来切换各个视角 左上角是一个 后视摄像头的一个展平输出 这个展平输出也是由 那个畸变矫正模块输出的 也就是说畸变模块 可以分时的将四路图像转成碗形畸变 也可以将鱼眼图像转成展平图像 也可以将展平图像转成俯视图像 然后右面是我们对 目前一些车模的进行一些图像的抓取 我们可以在 PC 上 做一些非常复杂的模型 非常复杂的光照 这些都可以在 PC 上进行实现 最后由 DSP 进行一个贴图 最右侧我们可以通过在 PC 上修改车模的颜色 比如说我需要转向灯 打开转向灯或者说打开车门 或者说轮胎转动 这些操作都可以在 PC 上实现 然后下面我们可以看到 有一些非常复杂的功能 这些功能也是我们在和第三方 或者说是在和我们的客户 进行一些合作的截图 一个是对动态碗的一个变换 比如说我们在距离左右侧 或者说前后侧的车辆 或者说障碍物的距离 在全景中会看出一个非常 奇特的一个现象 而这个现象是由于碗的设计 和实际的空间位置不匹配导致的 如果说我们可以通过超声波方式 测量到周围的距离 这样的话我们动态的调整碗的形状 就可以实现真实的一个 3D全景 接下来的话我们也可以通过 超声波或者说毫米波的方式 融合车机传来的一些参数 在全景图像中进行绘图 更进一步的 我们和一些客户已经合作 作出了一些像 停车辅助 停车线识别的这些功能
目前下面来介绍一下 TDA3 环视全景的一个解决方案 目前 TDA3 是目前功耗最低 成本最低的一个 3D 全景的解决方案 TDA3 做 3D 全景的几个优势非常明显 首先是对成本和性价比 要求非常高的一些低端 面向于低端市场的一些应用 首先 TDA3x 里面 没有 A 系列的 ARM A 系列的处理器 只有 M 系列处理器 可以认为它的整个系统的架构 和单片机是相似的 另一方面的话 不同频率不同核心数量的选择 可以在 TDA3 里面 也可以分为中高低端三个层次 此外低功耗的一个芯片能力 对散热和整个系统硬件结构 降低了很多很多需求 最后由于 TDA3 中不仅是带有 ARM 的 M 系列处理器 还有 TI 最擅长的DSP处理器EVE处理器 他们都会提供他们最擅长的一些 图像相关的计算 最终实现一个目标检测和车道线检测 运动物体识别等等 额外的图像处理能力 取决于你对额外处理能力的需求 你可以选择 TDA3 系列频率更高 或者说频率更低的一些处理器 快速上手也是一个非常重要的一点 我们目前结合多个第三方 提供了多种平台的一个设计 就像图上所示 TDA3 处理器只有15毫米乘以15毫米 整个板卡的设计将会非常紧凑 右下角是我们的一个第三方设计的一个 环视全景的一个评估平台 这是一个非常小的一个滑板车 在滑板车上附带有四路摄像头 同时接入到 TDA3 中 实现一个 3D 全景 这个滑板车 我们目前是可以在网上订购到的 它具有以下几个特点 首先是它的工业设计 它有防水外壳 可以具体安装到车机上 另一方面的话 它也可以对接不同型号 不同电压的摄像头 此外整个这个参考设计是 使用汽车级元器件进行设计 可以快速的在实车上安装 并且进行测试和调试 而且最重要的是这一套系统 可以再由 VisionSDK 原生支持 不需要做任何的 软件上的一些调整即可运行 下面我们对比一下传统的 GPU 全景 和 TDA3 没有 GPU 的 全景的一个系统框图 首先这里是一个传统 GPU 全景 通常是将摄像头经过 ISP 处理之后 转化成 YUV 格式 通过芯片同轴线 或者说 LVDS 传输到芯片中 由 ARM 的 CortexA 系列的 处理器控制 GPU 进行一些图像的渲染 车模的渲染 最终输出到显示去 可以看到涉及到 ARM 的 A 系列处理器之后 整个系统的发热量 和复杂度有非常高的提升 接下来的话我们看一下 TDA3 全景的一个 BOM 最优的设计 我们将选用输出为 raw data 的传感器 将 raw data 通过 ser 芯片 传输到 TI 提供的四合一的 ser 芯片 也就是 FPD Link 96 系列 然后由 CSI 接口接入到 TDA3 中 有 TDA3 中的 ISP 进行一个分时的一个 ISP 的 raw data 的一个处理 将处理后的结果交由硬件加速器 由硬件加速器 做更进一步的 3D 全景效果 由硬件加速器做完的全景效果 最后会由 DSP 进行贴图 最终输出到屏幕上 也就是说剩余的像 Cortex M4 和 EVE 还有其他剩余的计算资源 都可以用来做其他的一些 图像处理算法 目前我们对 raw sensor 的支持是这样 我们目前已经支持 少数几款车厂和 TIER1 最主流的芯片 在之后的一段时间内 我们将会陆陆续续支持 所有的目前市场上最主流的芯片 最主流的 sensor 下面我们将会挨个看一下 就是目前3D全景和2D全景中 对全景系统的一些 常见系统的一些缺点 而 TDA3 是怎么克服这些缺点 首先是对亮度均衡 有的供应商把亮度均衡作为他们 算法的一个优势之一 而 TDA3 的话 整个系统由于 ISP 使用了 统一的 ISP 进行分时处理 我们的寄存器和包括像曝光时间 或者说是一些白平衡的一些参数 这些参数都是汇集在同一个地方 汇集到同一个地方的好处就是 我可以做相同时间的曝光 这样的话就完全不会出现 两两摄像头之间出现白平衡 或者说是亮度的一个差异 从根本上解决了亮度均衡的一个问题 这也是目前 TDA3 ISP 最明显的一个优势 如果说你仍然是采用 四个分立的 ISP 在摄像头中 他们的曝光时间是完全不可控的 另外你也很难说能够控制四路 图像是在同一时间进行曝光 这个是分立 ISP 可能会带来的问题 而采用统一的 ISP 处理 通过 FPD Link 可以实现 硬件上的信号电平的控制的曝光 以及四路镜头完全相同的曝光时间 可以保证整个系统的亮度的完全均衡 接下来的话是宽动态 有的人可能就会有疑问 就是如果说你采用相同的曝光 那么如果某一路特别亮 某一路特别暗怎么办 这就是 ISP 解决的第二个问题 内置的 ISP 因为收取的是 raw data 的 sensor 所以说可以在芯片中做 非常复杂的宽动态的计算 对这个宽动态的计算 可以保证在相同曝光时间 各个摄像头它对 它的曝光水平是一致的 可以保证相同过渡区域的亮度是一致 但是在高亮区域 将会做一个宽动态的一个处理 在黑暗的区域也会做一个提升的处理 这样既不会显得整个图像有突兀 这样既不会显得整个图像有突兀 也能够充分发挥 ISP 里面宽动态的特性 另一个挑战就是对车模质量的一个挑战 有很多车厂包括客户最终端的消费者 他们对车模的质量有非常高的要求 人们总是不喜欢坐在车里 看到一个像塑料玩具车 一样的车模在旋转 这样的话给人一种不安全感 包括车厂也会要求在 openGL 渲染的时候 需要把光照以及车门 车窗 车轮 包括车内的一些景象 进行一个非常精细化的设计 而这样的设计对 GPU 的负荷提升非常高 在 TDA3 整个3D全景过程中 我们将不会用 GPU 或者说 openGL 来做这件事情 所有的车模我们都会在 PC 机端 离线进行计算 计算完成之后由 DSP 贴图实现 这样的话可以将在 PC 上 我们实现一个非常非常复杂的一个车模 贴至我们现有的一个3D全景中 这样的话可以百分之百回避掉 GPU 它对三角形个数 对光照反射以及像复杂纹理 或者说其它一些定制化的需求 那么如何不使用 GPU 来实现一个3D全景 这个是 TI 目前最领先的一个技术 也是充分发挥了芯片中每一个硬件的功能 在 ISP 的设计之初 我们对鱼眼的畸变 或者说对普通镜头的一个镜头的畸变 有一个硬件的一个畸变矫正加速器 而这个加速器它的输入是一个网格 也就是说你告诉它 它的畸变应该怎么样纠正 它将会把输入的图像 进行一个正确的纠正 然而如果我们对 3D 全景 有一个深度的认识之后 你会发现输入的图像 是一个鱼眼畸变的图像 你需要做的是一个将鱼眼展平的过程 展平之后 你需要再将展平的图像 进行一个透视变换 透视变换之后 再将透视变换的图像 进行一个碗形的变换 形成一个 3D 的碗形 所以说我们跨过这么多步 直接将鱼眼图变换为 3D 的碗形 这也是硬件加速器所支持的一个操作 这样的话 我们将四张输入的鱼眼图像 分别变换成对应的碗的形状 由 DSP 分别贴至他所应该处的位置 并且由 DSP 来处理 他们之间的过渡区域 这些系数都将由 PC 进行计算 计算生成之后存入 DSP 中 也就是说就像这个流程图一样 我们将镜头畸变参数存入 Flash 中 在系统启动过程中 我们会将 Flash 中的这些参数 解压缩到内存中 DDR 中 将这些查找表依次传递给畸变矫正模块 由这个模块进行一个 对鱼眼图像的一个反畸变 并且进行一个碗形的一个变换 最终由 DSP 将车模 以及各个四路之间的一个过渡 最终贴图形成一个3D全景 这一套流程是目前其他车 其他芯片或者说是目前 常见 GPU 方案中所难以见到的 也就是说我们充分发挥了 单片机中一个非常高效的硬件模块 由这个模块来鱼眼变换 做碗形变换 做 GPU 所需要做的事情 下面这些图片是我们 在实际车辆上 和实际的玩具车上 进行的一些测试的抓图 左上角是一个非常常见的一个 车机的一个 UI 界面 我们可以通过点击右侧的 摄像头的标志来切换各个视角 左上角是一个 后视摄像头的一个展平输出 这个展平输出也是由 那个畸变矫正模块输出的 也就是说畸变模块 可以分时的将四路图像转成碗形畸变 也可以将鱼眼图像转成展平图像 也可以将展平图像转成俯视图像 然后右面是我们对 目前一些车模的进行一些图像的抓取 我们可以在 PC 上 做一些非常复杂的模型 非常复杂的光照 这些都可以在 PC 上进行实现 最后由 DSP 进行一个贴图 最右侧我们可以通过在 PC 上修改车模的颜色 比如说我需要转向灯 打开转向灯或者说打开车门 或者说轮胎转动 这些操作都可以在 PC 上实现 然后下面我们可以看到 有一些非常复杂的功能 这些功能也是我们在和第三方 或者说是在和我们的客户 进行一些合作的截图 一个是对动态碗的一个变换 比如说我们在距离左右侧 或者说前后侧的车辆 或者说障碍物的距离 在全景中会看出一个非常 奇特的一个现象 而这个现象是由于碗的设计 和实际的空间位置不匹配导致的 如果说我们可以通过超声波方式 测量到周围的距离 这样的话我们动态的调整碗的形状 就可以实现真实的一个 3D全景 接下来的话我们也可以通过 超声波或者说毫米波的方式 融合车机传来的一些参数 在全景图像中进行绘图 更进一步的 我们和一些客户已经合作 作出了一些像 停车辅助 停车线识别的这些功能
目前下面来介绍一下
TDA3 环视全景的一个解决方案
目前 TDA3 是目前功耗最低
成本最低的一个 3D 全景的解决方案
TDA3 做 3D 全景的几个优势非常明显
首先是对成本和性价比
要求非常高的一些低端
面向于低端市场的一些应用
首先 TDA3x 里面
没有 A 系列的 ARM A 系列的处理器
只有 M 系列处理器
可以认为它的整个系统的架构
和单片机是相似的
另一方面的话
不同频率不同核心数量的选择
可以在 TDA3 里面
也可以分为中高低端三个层次
此外低功耗的一个芯片能力
对散热和整个系统硬件结构
降低了很多很多需求
最后由于 TDA3 中不仅是带有
ARM 的 M 系列处理器
还有 TI 最擅长的DSP处理器EVE处理器
他们都会提供他们最擅长的一些
图像相关的计算
最终实现一个目标检测和车道线检测
运动物体识别等等
额外的图像处理能力
取决于你对额外处理能力的需求
你可以选择 TDA3 系列频率更高
或者说频率更低的一些处理器
快速上手也是一个非常重要的一点
我们目前结合多个第三方
提供了多种平台的一个设计
就像图上所示
TDA3 处理器只有15毫米乘以15毫米
整个板卡的设计将会非常紧凑
右下角是我们的一个第三方设计的一个
环视全景的一个评估平台
这是一个非常小的一个滑板车
在滑板车上附带有四路摄像头
同时接入到 TDA3 中
实现一个 3D 全景
这个滑板车
我们目前是可以在网上订购到的
它具有以下几个特点
首先是它的工业设计
它有防水外壳
可以具体安装到车机上
另一方面的话
它也可以对接不同型号
不同电压的摄像头
此外整个这个参考设计是
使用汽车级元器件进行设计
可以快速的在实车上安装
并且进行测试和调试
而且最重要的是这一套系统
可以再由 VisionSDK 原生支持
不需要做任何的
软件上的一些调整即可运行
下面我们对比一下传统的 GPU 全景
和 TDA3 没有 GPU 的
全景的一个系统框图
首先这里是一个传统 GPU 全景
通常是将摄像头经过 ISP 处理之后
转化成 YUV 格式
通过芯片同轴线
或者说 LVDS 传输到芯片中
由 ARM 的 CortexA 系列的
处理器控制 GPU
进行一些图像的渲染
车模的渲染
最终输出到显示去
可以看到涉及到
ARM 的 A 系列处理器之后
整个系统的发热量
和复杂度有非常高的提升
接下来的话我们看一下 TDA3
全景的一个 BOM 最优的设计
我们将选用输出为 raw data 的传感器
将 raw data 通过 ser 芯片
传输到 TI 提供的四合一的 ser 芯片
也就是 FPD Link 96 系列
然后由 CSI 接口接入到 TDA3 中
有 TDA3 中的 ISP
进行一个分时的一个 ISP 的
raw data 的一个处理
将处理后的结果交由硬件加速器
由硬件加速器
做更进一步的 3D 全景效果
由硬件加速器做完的全景效果
最后会由 DSP 进行贴图
最终输出到屏幕上
也就是说剩余的像 Cortex M4
和 EVE 还有其他剩余的计算资源
都可以用来做其他的一些
图像处理算法
目前我们对 raw sensor 的支持是这样
我们目前已经支持
少数几款车厂和 TIER1 最主流的芯片
在之后的一段时间内
我们将会陆陆续续支持
所有的目前市场上最主流的芯片
最主流的 sensor
下面我们将会挨个看一下
就是目前3D全景和2D全景中
对全景系统的一些
常见系统的一些缺点
而 TDA3 是怎么克服这些缺点
首先是对亮度均衡
有的供应商把亮度均衡作为他们
算法的一个优势之一
而 TDA3 的话
整个系统由于 ISP 使用了
统一的 ISP 进行分时处理
我们的寄存器和包括像曝光时间
或者说是一些白平衡的一些参数
这些参数都是汇集在同一个地方
汇集到同一个地方的好处就是
我可以做相同时间的曝光
这样的话就完全不会出现
两两摄像头之间出现白平衡
或者说是亮度的一个差异
从根本上解决了亮度均衡的一个问题
这也是目前 TDA3 ISP
最明显的一个优势
如果说你仍然是采用
四个分立的 ISP 在摄像头中
他们的曝光时间是完全不可控的
另外你也很难说能够控制四路
图像是在同一时间进行曝光
这个是分立 ISP 可能会带来的问题
而采用统一的 ISP 处理
通过 FPD Link 可以实现
硬件上的信号电平的控制的曝光
以及四路镜头完全相同的曝光时间
可以保证整个系统的亮度的完全均衡
接下来的话是宽动态
有的人可能就会有疑问
就是如果说你采用相同的曝光
那么如果某一路特别亮
某一路特别暗怎么办
这就是 ISP 解决的第二个问题
内置的 ISP
因为收取的是 raw data 的 sensor
所以说可以在芯片中做
非常复杂的宽动态的计算
对这个宽动态的计算
可以保证在相同曝光时间
各个摄像头它对
它的曝光水平是一致的
可以保证相同过渡区域的亮度是一致
但是在高亮区域
将会做一个宽动态的一个处理
在黑暗的区域也会做一个提升的处理
这样既不会显得整个图像有突兀
这样既不会显得整个图像有突兀
也能够充分发挥 ISP 里面宽动态的特性
另一个挑战就是对车模质量的一个挑战
有很多车厂包括客户最终端的消费者
他们对车模的质量有非常高的要求
人们总是不喜欢坐在车里
看到一个像塑料玩具车
一样的车模在旋转
这样的话给人一种不安全感
包括车厂也会要求在 openGL 渲染的时候
需要把光照以及车门 车窗 车轮
包括车内的一些景象
进行一个非常精细化的设计
而这样的设计对 GPU 的负荷提升非常高
在 TDA3 整个3D全景过程中
我们将不会用 GPU
或者说 openGL 来做这件事情
所有的车模我们都会在 PC 机端
离线进行计算
计算完成之后由 DSP 贴图实现
这样的话可以将在 PC 上
我们实现一个非常非常复杂的一个车模
贴至我们现有的一个3D全景中
这样的话可以百分之百回避掉
GPU 它对三角形个数
对光照反射以及像复杂纹理
或者说其它一些定制化的需求
那么如何不使用 GPU 来实现一个3D全景
这个是 TI 目前最领先的一个技术
也是充分发挥了芯片中每一个硬件的功能
在 ISP 的设计之初
我们对鱼眼的畸变
或者说对普通镜头的一个镜头的畸变
有一个硬件的一个畸变矫正加速器
而这个加速器它的输入是一个网格
也就是说你告诉它
它的畸变应该怎么样纠正
它将会把输入的图像
进行一个正确的纠正
然而如果我们对 3D 全景
有一个深度的认识之后
你会发现输入的图像
是一个鱼眼畸变的图像
你需要做的是一个将鱼眼展平的过程
展平之后
你需要再将展平的图像
进行一个透视变换
透视变换之后
再将透视变换的图像
进行一个碗形的变换
形成一个 3D 的碗形
所以说我们跨过这么多步
直接将鱼眼图变换为 3D 的碗形
这也是硬件加速器所支持的一个操作
这样的话
我们将四张输入的鱼眼图像
分别变换成对应的碗的形状
由 DSP 分别贴至他所应该处的位置
并且由 DSP 来处理
他们之间的过渡区域
这些系数都将由 PC 进行计算
计算生成之后存入 DSP 中
也就是说就像这个流程图一样
我们将镜头畸变参数存入 Flash 中
在系统启动过程中
我们会将 Flash 中的这些参数
解压缩到内存中 DDR 中
将这些查找表依次传递给畸变矫正模块
由这个模块进行一个
对鱼眼图像的一个反畸变
并且进行一个碗形的一个变换
最终由 DSP 将车模
以及各个四路之间的一个过渡
最终贴图形成一个3D全景
这一套流程是目前其他车
其他芯片或者说是目前
常见 GPU 方案中所难以见到的
也就是说我们充分发挥了
单片机中一个非常高效的硬件模块
由这个模块来鱼眼变换
做碗形变换 做 GPU 所需要做的事情
下面这些图片是我们
在实际车辆上
和实际的玩具车上
进行的一些测试的抓图
左上角是一个非常常见的一个
车机的一个 UI 界面
我们可以通过点击右侧的
摄像头的标志来切换各个视角
左上角是一个
后视摄像头的一个展平输出
这个展平输出也是由
那个畸变矫正模块输出的
也就是说畸变模块
可以分时的将四路图像转成碗形畸变
也可以将鱼眼图像转成展平图像
也可以将展平图像转成俯视图像
然后右面是我们对
目前一些车模的进行一些图像的抓取
我们可以在 PC 上
做一些非常复杂的模型
非常复杂的光照
这些都可以在 PC 上进行实现
最后由 DSP 进行一个贴图
最右侧我们可以通过在
PC 上修改车模的颜色
比如说我需要转向灯
打开转向灯或者说打开车门
或者说轮胎转动
这些操作都可以在 PC 上实现
然后下面我们可以看到
有一些非常复杂的功能
这些功能也是我们在和第三方
或者说是在和我们的客户
进行一些合作的截图
一个是对动态碗的一个变换
比如说我们在距离左右侧
或者说前后侧的车辆
或者说障碍物的距离
在全景中会看出一个非常
奇特的一个现象
而这个现象是由于碗的设计
和实际的空间位置不匹配导致的
如果说我们可以通过超声波方式
测量到周围的距离
这样的话我们动态的调整碗的形状
就可以实现真实的一个 3D全景
接下来的话我们也可以通过
超声波或者说毫米波的方式
融合车机传来的一些参数
在全景图像中进行绘图
更进一步的
我们和一些客户已经合作
作出了一些像 停车辅助
停车线识别的这些功能
目前下面来介绍一下 TDA3 环视全景的一个解决方案 目前 TDA3 是目前功耗最低 成本最低的一个 3D 全景的解决方案 TDA3 做 3D 全景的几个优势非常明显 首先是对成本和性价比 要求非常高的一些低端 面向于低端市场的一些应用 首先 TDA3x 里面 没有 A 系列的 ARM A 系列的处理器 只有 M 系列处理器 可以认为它的整个系统的架构 和单片机是相似的 另一方面的话 不同频率不同核心数量的选择 可以在 TDA3 里面 也可以分为中高低端三个层次 此外低功耗的一个芯片能力 对散热和整个系统硬件结构 降低了很多很多需求 最后由于 TDA3 中不仅是带有 ARM 的 M 系列处理器 还有 TI 最擅长的DSP处理器EVE处理器 他们都会提供他们最擅长的一些 图像相关的计算 最终实现一个目标检测和车道线检测 运动物体识别等等 额外的图像处理能力 取决于你对额外处理能力的需求 你可以选择 TDA3 系列频率更高 或者说频率更低的一些处理器 快速上手也是一个非常重要的一点 我们目前结合多个第三方 提供了多种平台的一个设计 就像图上所示 TDA3 处理器只有15毫米乘以15毫米 整个板卡的设计将会非常紧凑 右下角是我们的一个第三方设计的一个 环视全景的一个评估平台 这是一个非常小的一个滑板车 在滑板车上附带有四路摄像头 同时接入到 TDA3 中 实现一个 3D 全景 这个滑板车 我们目前是可以在网上订购到的 它具有以下几个特点 首先是它的工业设计 它有防水外壳 可以具体安装到车机上 另一方面的话 它也可以对接不同型号 不同电压的摄像头 此外整个这个参考设计是 使用汽车级元器件进行设计 可以快速的在实车上安装 并且进行测试和调试 而且最重要的是这一套系统 可以再由 VisionSDK 原生支持 不需要做任何的 软件上的一些调整即可运行 下面我们对比一下传统的 GPU 全景 和 TDA3 没有 GPU 的 全景的一个系统框图 首先这里是一个传统 GPU 全景 通常是将摄像头经过 ISP 处理之后 转化成 YUV 格式 通过芯片同轴线 或者说 LVDS 传输到芯片中 由 ARM 的 CortexA 系列的 处理器控制 GPU 进行一些图像的渲染 车模的渲染 最终输出到显示去 可以看到涉及到 ARM 的 A 系列处理器之后 整个系统的发热量 和复杂度有非常高的提升 接下来的话我们看一下 TDA3 全景的一个 BOM 最优的设计 我们将选用输出为 raw data 的传感器 将 raw data 通过 ser 芯片 传输到 TI 提供的四合一的 ser 芯片 也就是 FPD Link 96 系列 然后由 CSI 接口接入到 TDA3 中 有 TDA3 中的 ISP 进行一个分时的一个 ISP 的 raw data 的一个处理 将处理后的结果交由硬件加速器 由硬件加速器 做更进一步的 3D 全景效果 由硬件加速器做完的全景效果 最后会由 DSP 进行贴图 最终输出到屏幕上 也就是说剩余的像 Cortex M4 和 EVE 还有其他剩余的计算资源 都可以用来做其他的一些 图像处理算法 目前我们对 raw sensor 的支持是这样 我们目前已经支持 少数几款车厂和 TIER1 最主流的芯片 在之后的一段时间内 我们将会陆陆续续支持 所有的目前市场上最主流的芯片 最主流的 sensor 下面我们将会挨个看一下 就是目前3D全景和2D全景中 对全景系统的一些 常见系统的一些缺点 而 TDA3 是怎么克服这些缺点 首先是对亮度均衡 有的供应商把亮度均衡作为他们 算法的一个优势之一 而 TDA3 的话 整个系统由于 ISP 使用了 统一的 ISP 进行分时处理 我们的寄存器和包括像曝光时间 或者说是一些白平衡的一些参数 这些参数都是汇集在同一个地方 汇集到同一个地方的好处就是 我可以做相同时间的曝光 这样的话就完全不会出现 两两摄像头之间出现白平衡 或者说是亮度的一个差异 从根本上解决了亮度均衡的一个问题 这也是目前 TDA3 ISP 最明显的一个优势 如果说你仍然是采用 四个分立的 ISP 在摄像头中 他们的曝光时间是完全不可控的 另外你也很难说能够控制四路 图像是在同一时间进行曝光 这个是分立 ISP 可能会带来的问题 而采用统一的 ISP 处理 通过 FPD Link 可以实现 硬件上的信号电平的控制的曝光 以及四路镜头完全相同的曝光时间 可以保证整个系统的亮度的完全均衡 接下来的话是宽动态 有的人可能就会有疑问 就是如果说你采用相同的曝光 那么如果某一路特别亮 某一路特别暗怎么办 这就是 ISP 解决的第二个问题 内置的 ISP 因为收取的是 raw data 的 sensor 所以说可以在芯片中做 非常复杂的宽动态的计算 对这个宽动态的计算 可以保证在相同曝光时间 各个摄像头它对 它的曝光水平是一致的 可以保证相同过渡区域的亮度是一致 但是在高亮区域 将会做一个宽动态的一个处理 在黑暗的区域也会做一个提升的处理 这样既不会显得整个图像有突兀 这样既不会显得整个图像有突兀 也能够充分发挥 ISP 里面宽动态的特性 另一个挑战就是对车模质量的一个挑战 有很多车厂包括客户最终端的消费者 他们对车模的质量有非常高的要求 人们总是不喜欢坐在车里 看到一个像塑料玩具车 一样的车模在旋转 这样的话给人一种不安全感 包括车厂也会要求在 openGL 渲染的时候 需要把光照以及车门 车窗 车轮 包括车内的一些景象 进行一个非常精细化的设计 而这样的设计对 GPU 的负荷提升非常高 在 TDA3 整个3D全景过程中 我们将不会用 GPU 或者说 openGL 来做这件事情 所有的车模我们都会在 PC 机端 离线进行计算 计算完成之后由 DSP 贴图实现 这样的话可以将在 PC 上 我们实现一个非常非常复杂的一个车模 贴至我们现有的一个3D全景中 这样的话可以百分之百回避掉 GPU 它对三角形个数 对光照反射以及像复杂纹理 或者说其它一些定制化的需求 那么如何不使用 GPU 来实现一个3D全景 这个是 TI 目前最领先的一个技术 也是充分发挥了芯片中每一个硬件的功能 在 ISP 的设计之初 我们对鱼眼的畸变 或者说对普通镜头的一个镜头的畸变 有一个硬件的一个畸变矫正加速器 而这个加速器它的输入是一个网格 也就是说你告诉它 它的畸变应该怎么样纠正 它将会把输入的图像 进行一个正确的纠正 然而如果我们对 3D 全景 有一个深度的认识之后 你会发现输入的图像 是一个鱼眼畸变的图像 你需要做的是一个将鱼眼展平的过程 展平之后 你需要再将展平的图像 进行一个透视变换 透视变换之后 再将透视变换的图像 进行一个碗形的变换 形成一个 3D 的碗形 所以说我们跨过这么多步 直接将鱼眼图变换为 3D 的碗形 这也是硬件加速器所支持的一个操作 这样的话 我们将四张输入的鱼眼图像 分别变换成对应的碗的形状 由 DSP 分别贴至他所应该处的位置 并且由 DSP 来处理 他们之间的过渡区域 这些系数都将由 PC 进行计算 计算生成之后存入 DSP 中 也就是说就像这个流程图一样 我们将镜头畸变参数存入 Flash 中 在系统启动过程中 我们会将 Flash 中的这些参数 解压缩到内存中 DDR 中 将这些查找表依次传递给畸变矫正模块 由这个模块进行一个 对鱼眼图像的一个反畸变 并且进行一个碗形的一个变换 最终由 DSP 将车模 以及各个四路之间的一个过渡 最终贴图形成一个3D全景 这一套流程是目前其他车 其他芯片或者说是目前 常见 GPU 方案中所难以见到的 也就是说我们充分发挥了 单片机中一个非常高效的硬件模块 由这个模块来鱼眼变换 做碗形变换 做 GPU 所需要做的事情 下面这些图片是我们 在实际车辆上 和实际的玩具车上 进行的一些测试的抓图 左上角是一个非常常见的一个 车机的一个 UI 界面 我们可以通过点击右侧的 摄像头的标志来切换各个视角 左上角是一个 后视摄像头的一个展平输出 这个展平输出也是由 那个畸变矫正模块输出的 也就是说畸变模块 可以分时的将四路图像转成碗形畸变 也可以将鱼眼图像转成展平图像 也可以将展平图像转成俯视图像 然后右面是我们对 目前一些车模的进行一些图像的抓取 我们可以在 PC 上 做一些非常复杂的模型 非常复杂的光照 这些都可以在 PC 上进行实现 最后由 DSP 进行一个贴图 最右侧我们可以通过在 PC 上修改车模的颜色 比如说我需要转向灯 打开转向灯或者说打开车门 或者说轮胎转动 这些操作都可以在 PC 上实现 然后下面我们可以看到 有一些非常复杂的功能 这些功能也是我们在和第三方 或者说是在和我们的客户 进行一些合作的截图 一个是对动态碗的一个变换 比如说我们在距离左右侧 或者说前后侧的车辆 或者说障碍物的距离 在全景中会看出一个非常 奇特的一个现象 而这个现象是由于碗的设计 和实际的空间位置不匹配导致的 如果说我们可以通过超声波方式 测量到周围的距离 这样的话我们动态的调整碗的形状 就可以实现真实的一个 3D全景 接下来的话我们也可以通过 超声波或者说毫米波的方式 融合车机传来的一些参数 在全景图像中进行绘图 更进一步的 我们和一些客户已经合作 作出了一些像 停车辅助 停车线识别的这些功能
目前下面来介绍一下
TDA3 环视全景的一个解决方案
目前 TDA3 是目前功耗最低
成本最低的一个 3D 全景的解决方案
TDA3 做 3D 全景的几个优势非常明显
首先是对成本和性价比
要求非常高的一些低端
面向于低端市场的一些应用
首先 TDA3x 里面
没有 A 系列的 ARM A 系列的处理器
只有 M 系列处理器
可以认为它的整个系统的架构
和单片机是相似的
另一方面的话
不同频率不同核心数量的选择
可以在 TDA3 里面
也可以分为中高低端三个层次
此外低功耗的一个芯片能力
对散热和整个系统硬件结构
降低了很多很多需求
最后由于 TDA3 中不仅是带有
ARM 的 M 系列处理器
还有 TI 最擅长的DSP处理器EVE处理器
他们都会提供他们最擅长的一些
图像相关的计算
最终实现一个目标检测和车道线检测
运动物体识别等等
额外的图像处理能力
取决于你对额外处理能力的需求
你可以选择 TDA3 系列频率更高
或者说频率更低的一些处理器
快速上手也是一个非常重要的一点
我们目前结合多个第三方
提供了多种平台的一个设计
就像图上所示
TDA3 处理器只有15毫米乘以15毫米
整个板卡的设计将会非常紧凑
右下角是我们的一个第三方设计的一个
环视全景的一个评估平台
这是一个非常小的一个滑板车
在滑板车上附带有四路摄像头
同时接入到 TDA3 中
实现一个 3D 全景
这个滑板车
我们目前是可以在网上订购到的
它具有以下几个特点
首先是它的工业设计
它有防水外壳
可以具体安装到车机上
另一方面的话
它也可以对接不同型号
不同电压的摄像头
此外整个这个参考设计是
使用汽车级元器件进行设计
可以快速的在实车上安装
并且进行测试和调试
而且最重要的是这一套系统
可以再由 VisionSDK 原生支持
不需要做任何的
软件上的一些调整即可运行
下面我们对比一下传统的 GPU 全景
和 TDA3 没有 GPU 的
全景的一个系统框图
首先这里是一个传统 GPU 全景
通常是将摄像头经过 ISP 处理之后
转化成 YUV 格式
通过芯片同轴线
或者说 LVDS 传输到芯片中
由 ARM 的 CortexA 系列的
处理器控制 GPU
进行一些图像的渲染
车模的渲染
最终输出到显示去
可以看到涉及到
ARM 的 A 系列处理器之后
整个系统的发热量
和复杂度有非常高的提升
接下来的话我们看一下 TDA3
全景的一个 BOM 最优的设计
我们将选用输出为 raw data 的传感器
将 raw data 通过 ser 芯片
传输到 TI 提供的四合一的 ser 芯片
也就是 FPD Link 96 系列
然后由 CSI 接口接入到 TDA3 中
有 TDA3 中的 ISP
进行一个分时的一个 ISP 的
raw data 的一个处理
将处理后的结果交由硬件加速器
由硬件加速器
做更进一步的 3D 全景效果
由硬件加速器做完的全景效果
最后会由 DSP 进行贴图
最终输出到屏幕上
也就是说剩余的像 Cortex M4
和 EVE 还有其他剩余的计算资源
都可以用来做其他的一些
图像处理算法
目前我们对 raw sensor 的支持是这样
我们目前已经支持
少数几款车厂和 TIER1 最主流的芯片
在之后的一段时间内
我们将会陆陆续续支持
所有的目前市场上最主流的芯片
最主流的 sensor
下面我们将会挨个看一下
就是目前3D全景和2D全景中
对全景系统的一些
常见系统的一些缺点
而 TDA3 是怎么克服这些缺点
首先是对亮度均衡
有的供应商把亮度均衡作为他们
算法的一个优势之一
而 TDA3 的话
整个系统由于 ISP 使用了
统一的 ISP 进行分时处理
我们的寄存器和包括像曝光时间
或者说是一些白平衡的一些参数
这些参数都是汇集在同一个地方
汇集到同一个地方的好处就是
我可以做相同时间的曝光
这样的话就完全不会出现
两两摄像头之间出现白平衡
或者说是亮度的一个差异
从根本上解决了亮度均衡的一个问题
这也是目前 TDA3 ISP
最明显的一个优势
如果说你仍然是采用
四个分立的 ISP 在摄像头中
他们的曝光时间是完全不可控的
另外你也很难说能够控制四路
图像是在同一时间进行曝光
这个是分立 ISP 可能会带来的问题
而采用统一的 ISP 处理
通过 FPD Link 可以实现
硬件上的信号电平的控制的曝光
以及四路镜头完全相同的曝光时间
可以保证整个系统的亮度的完全均衡
接下来的话是宽动态
有的人可能就会有疑问
就是如果说你采用相同的曝光
那么如果某一路特别亮
某一路特别暗怎么办
这就是 ISP 解决的第二个问题
内置的 ISP
因为收取的是 raw data 的 sensor
所以说可以在芯片中做
非常复杂的宽动态的计算
对这个宽动态的计算
可以保证在相同曝光时间
各个摄像头它对
它的曝光水平是一致的
可以保证相同过渡区域的亮度是一致
但是在高亮区域
将会做一个宽动态的一个处理
在黑暗的区域也会做一个提升的处理
这样既不会显得整个图像有突兀
这样既不会显得整个图像有突兀
也能够充分发挥 ISP 里面宽动态的特性
另一个挑战就是对车模质量的一个挑战
有很多车厂包括客户最终端的消费者
他们对车模的质量有非常高的要求
人们总是不喜欢坐在车里
看到一个像塑料玩具车
一样的车模在旋转
这样的话给人一种不安全感
包括车厂也会要求在 openGL 渲染的时候
需要把光照以及车门 车窗 车轮
包括车内的一些景象
进行一个非常精细化的设计
而这样的设计对 GPU 的负荷提升非常高
在 TDA3 整个3D全景过程中
我们将不会用 GPU
或者说 openGL 来做这件事情
所有的车模我们都会在 PC 机端
离线进行计算
计算完成之后由 DSP 贴图实现
这样的话可以将在 PC 上
我们实现一个非常非常复杂的一个车模
贴至我们现有的一个3D全景中
这样的话可以百分之百回避掉
GPU 它对三角形个数
对光照反射以及像复杂纹理
或者说其它一些定制化的需求
那么如何不使用 GPU 来实现一个3D全景
这个是 TI 目前最领先的一个技术
也是充分发挥了芯片中每一个硬件的功能
在 ISP 的设计之初
我们对鱼眼的畸变
或者说对普通镜头的一个镜头的畸变
有一个硬件的一个畸变矫正加速器
而这个加速器它的输入是一个网格
也就是说你告诉它
它的畸变应该怎么样纠正
它将会把输入的图像
进行一个正确的纠正
然而如果我们对 3D 全景
有一个深度的认识之后
你会发现输入的图像
是一个鱼眼畸变的图像
你需要做的是一个将鱼眼展平的过程
展平之后
你需要再将展平的图像
进行一个透视变换
透视变换之后
再将透视变换的图像
进行一个碗形的变换
形成一个 3D 的碗形
所以说我们跨过这么多步
直接将鱼眼图变换为 3D 的碗形
这也是硬件加速器所支持的一个操作
这样的话
我们将四张输入的鱼眼图像
分别变换成对应的碗的形状
由 DSP 分别贴至他所应该处的位置
并且由 DSP 来处理
他们之间的过渡区域
这些系数都将由 PC 进行计算
计算生成之后存入 DSP 中
也就是说就像这个流程图一样
我们将镜头畸变参数存入 Flash 中
在系统启动过程中
我们会将 Flash 中的这些参数
解压缩到内存中 DDR 中
将这些查找表依次传递给畸变矫正模块
由这个模块进行一个
对鱼眼图像的一个反畸变
并且进行一个碗形的一个变换
最终由 DSP 将车模
以及各个四路之间的一个过渡
最终贴图形成一个3D全景
这一套流程是目前其他车
其他芯片或者说是目前
常见 GPU 方案中所难以见到的
也就是说我们充分发挥了
单片机中一个非常高效的硬件模块
由这个模块来鱼眼变换
做碗形变换 做 GPU 所需要做的事情
下面这些图片是我们
在实际车辆上
和实际的玩具车上
进行的一些测试的抓图
左上角是一个非常常见的一个
车机的一个 UI 界面
我们可以通过点击右侧的
摄像头的标志来切换各个视角
左上角是一个
后视摄像头的一个展平输出
这个展平输出也是由
那个畸变矫正模块输出的
也就是说畸变模块
可以分时的将四路图像转成碗形畸变
也可以将鱼眼图像转成展平图像
也可以将展平图像转成俯视图像
然后右面是我们对
目前一些车模的进行一些图像的抓取
我们可以在 PC 上
做一些非常复杂的模型
非常复杂的光照
这些都可以在 PC 上进行实现
最后由 DSP 进行一个贴图
最右侧我们可以通过在
PC 上修改车模的颜色
比如说我需要转向灯
打开转向灯或者说打开车门
或者说轮胎转动
这些操作都可以在 PC 上实现
然后下面我们可以看到
有一些非常复杂的功能
这些功能也是我们在和第三方
或者说是在和我们的客户
进行一些合作的截图
一个是对动态碗的一个变换
比如说我们在距离左右侧
或者说前后侧的车辆
或者说障碍物的距离
在全景中会看出一个非常
奇特的一个现象
而这个现象是由于碗的设计
和实际的空间位置不匹配导致的
如果说我们可以通过超声波方式
测量到周围的距离
这样的话我们动态的调整碗的形状
就可以实现真实的一个 3D全景
接下来的话我们也可以通过
超声波或者说毫米波的方式
融合车机传来的一些参数
在全景图像中进行绘图
更进一步的
我们和一些客户已经合作
作出了一些像 停车辅助
停车线识别的这些功能
视频报错
手机看
扫码用手机观看
收藏本课程
视频简介
ADAS-车用全景解决方案 - TID3X -2
所属课程:TI 汽车电子“芯”驱动直播月-回看
发布时间:2018.08.24
视频集数:17
本节视频时长:00:16:27
课程主要介绍了以下六方面的内容:汽车车身控制模块、电动汽车模拟引擎声音系统设计、ADAS-车用全景解决方案 - TDA2E17、车身照明系统设计 、ADAS-车用全景解决方案 - TID3X、ADAS 主流系统架构介绍与设计挑战。
//=$v1;?>
//=$v['id']?>//=$v['down_category']?>//=$v['link']?>//=$v['is_dl']?>//=$v['link']?>//=$v['name']?>//=$v['name']?>
//=$v['id']?>//=$v['down_category']?>//=$v['path']?>//=$v['is_dl']?>//=$v['path']?>//=$v['name']?>//=$v['name']?>
////=count($lesson['bbsinfo'])?>
//=$elink?>//=$elink?>//=$tags[0]?>//=$tags[0]?>//=$elink?>//= $elink?>//=$tags[1]?>//=$tags[1]?>
//=$lesson['bbs'];?>
//=count($lesson['bbsinfo'])?>