摘要

由于自己新的工作接触到了图像识别,于是开始从零开始整理自己怎么从一个空白到实现识别的完整功能所需要的技术要点。当然并不是完全的从零开始,前提条件至少会用go和c++,go简单很容易就能上手,如果你有开发的工作经验,学习go那是相当容易的。C++相对于go会比较困难点,但是笔者也没有做过c++的经历,也就大学学过c而已,照葫芦画瓢,依然能用的来c++,所以相信大家花点时间也能熟练的使用这两门语言。

为什么要cgo

所谓的cgo就是go调用c/c++或者是反过来,如果你是一名go开发者,由于现在很多强大的开源库是使用c/c++编写的,比如Opencv、Opengl、Zbar等等,你既想用又不想切换语言,那么cgo就是很好的选择,这将使你站在巨人的肩膀上开发出自己的应用程序。学会cgo将会打开你新世界的大门,以另一种开发方式呈现在你眼前。

本课程的内容

cgo的环境配置以及搭建

cgo的hello world

Golang和C的类型转换

函数调用

内部机制

静态库和动态库

写几个简单示例

本课程的目的

通过上面课程的学习,掌握go和c/c++的相互调用,想要工欲善其事、必先利其器,先打好cgo的基础,对之后开发图像识别打下基础。能写一些简单的go调用c/c++的例子。

后续将会推出课程

1.golang+cgo+opencv图片基本操作

2.golang+cgo+opencv验证码识别

3.golang+cgo+zbar二维码识别

后续教程会在博客http://blog.qiurank.com上持续更新