From 29d7787654b118631607399d534f6a5022a746e6 Mon Sep 17 00:00:00 2001 From: geekpi Date: Mon, 18 Apr 2016 16:00:04 +0800 Subject: [PATCH 1/3] translating --- ...15 Docker 1.11 Adopts Open Container Project Components.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/sources/tech/20160415 Docker 1.11 Adopts Open Container Project Components.md b/sources/tech/20160415 Docker 1.11 Adopts Open Container Project Components.md index b10e13fe95..3c4f860e49 100644 --- a/sources/tech/20160415 Docker 1.11 Adopts Open Container Project Components.md +++ b/sources/tech/20160415 Docker 1.11 Adopts Open Container Project Components.md @@ -1,3 +1,5 @@ +Translating---geekpi + Docker 1.11 Adopts Open Container Project Components ======================================================= @@ -46,3 +48,5 @@ via: http://www.infoworld.com/article/3055966/open-source-tools/docker-111-adopt [6]: http://www.infoworld.com/article/2876801/application-virtualization/docker-reorganization-grows-up.html [7]: https://github.com/opencontainers/runc/graphs/contributors [8]: https://blog.docker.com/2016/04/docker-engine-1-11-runc/ + + From 57e6d3d644285c6bb08d6ad9592ba2eb8f978006 Mon Sep 17 00:00:00 2001 From: geekpi Date: Mon, 18 Apr 2016 17:48:06 +0800 Subject: [PATCH 2/3] translated --- ...dopts Open Container Project Components.md | 52 ------------------- ...dopts Open Container Project Components.md | 50 ++++++++++++++++++ 2 files changed, 50 insertions(+), 52 deletions(-) delete mode 100644 sources/tech/20160415 Docker 1.11 Adopts Open Container Project Components.md create mode 100644 translated/tech/20160415 Docker 1.11 Adopts Open Container Project Components.md diff --git a/sources/tech/20160415 Docker 1.11 Adopts Open Container Project Components.md b/sources/tech/20160415 Docker 1.11 Adopts Open Container Project Components.md deleted file mode 100644 index 3c4f860e49..0000000000 --- a/sources/tech/20160415 Docker 1.11 Adopts Open Container Project Components.md +++ /dev/null @@ -1,52 +0,0 @@ -Translating---geekpi - -Docker 1.11 Adopts Open Container Project Components -======================================================= - -![](http://images.techhive.com/images/article/2015/01/docker-620x465-100559026-primary.idge.jpg) - ->Docker's participation in the Open Container project has come full circle, as the latest version of Docker is now built with components donated by Docker to the OCP - -The biggest news about [Docker 1.11][1] isn't features in the application, but that it uses component versions standardized under the aegis of the Open Container Project. - -Last year, Docker donated the core of its [runC][2] runtime to the OCP as a basis for building container tools. The same went for [containerd][3], a daemon or server used to control instances of runC. Docker 1.11 now uses the donated and publicly worked-on versions of those projects. - ->[ Dig into the the red-hot open source framework in InfoWorld's [beginner's guide to Docker][4]. Pick it up today! | Get a digest of the day's top tech stories in the [InfoWorld Daily newsletter][5]. ] - ->Docker is making this move to challenge the narrative that its container ecosystem is still [dictated chiefly by Docker itself][6]. It isn't donating its container specs and runtime details to the OCP merely for show; it wants the future development of the project to be as open-ended and inclusive as possible. - -![](http://images.techhive.com/images/article/2016/04/docker-runc-100656060-large.idge.png) - ->Docker 1.11 has been reworked to use the runC and containerd components contributed to the Open Container Project. The runC engine can be swapped out and replaced if needed. - -[Two chief committers][7] on runC are Docker employees, but committers from Virtuozzo (of Parallels fame), Red Hat's OpenShift and Project Atomic projects, Huawei, GE Healthcare, and Suse Linux have all been regulars as well. - -The more visible changes in Docker 1.11 reflect this. Previously, the Docker runtime was the only one available within Docker, and critics felt this limited users' choices. The runc runtime is now swappable; while Docker ships with runc as the default engine, any other compatible engine can be swapped in. (Docker also wants it to be possible to do this without having to kill and restart currently running containers, but that's an improvement scheduled for later.) - -Docker is making a case for this OCP-based development process as an inherently better method to create its product. "Splitting Docker up into focused independent tools means more focused maintainers, and ultimately better quality software," stated Docker in its [official blog post][8] announcing 1.11. - -Aside from fixing long-standing bugs and ensuring the runC/containerd version of Docker didn't slow down, Docker has rolled a slew of improvements into Docker 1.11. Docker Engine now supports VLANs and IPv6 service discovery, and it automatically performs DNS round-robin load balancing across multiple containers that have the same alias. - - - ------------------------------------------------------------------------------- - -via: http://www.infoworld.com/article/3055966/open-source-tools/docker-111-adopts-open-container-project-components.html - -作者:[Serdar Yegulalp][a] -译者:[译者ID](https://github.com/译者ID) -校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](https://linux.cn/) 荣誉推出 - -[a]: http://www.infoworld.com/author/Serdar-Yegulalp/ -[1]: https://blog.docker.com/2016/04/docker-engine-1-11-runc/ -[2]: http://runc.io/ -[3]: https://containerd.tools/ -[4]: http://www.infoworld.com/resources/16373/application-virtualization/the-beginners-guide-to-docker#tk.ifw-infsb -[5]: http://www.infoworld.com/newsletters/signup.html#tk.ifw-infsb -[6]: http://www.infoworld.com/article/2876801/application-virtualization/docker-reorganization-grows-up.html -[7]: https://github.com/opencontainers/runc/graphs/contributors -[8]: https://blog.docker.com/2016/04/docker-engine-1-11-runc/ - - diff --git a/translated/tech/20160415 Docker 1.11 Adopts Open Container Project Components.md b/translated/tech/20160415 Docker 1.11 Adopts Open Container Project Components.md new file mode 100644 index 0000000000..98e8d49c06 --- /dev/null +++ b/translated/tech/20160415 Docker 1.11 Adopts Open Container Project Components.md @@ -0,0 +1,50 @@ +Docker 1.11采纳了开源容器项目组件 +======================================================= + +![](http://images.techhive.com/images/article/2015/01/docker-620x465-100559026-primary.idge.jpg) + +>Docker参与的开源项目完成了一个闭环,最新构建的Docker采用了Docker贡献给OCP的组件。 + +[Docker 1.11][1]最大的新闻并不是它的功能,而是它使用了在OCP支持下的标准化的组件版本。 + +去年,Docker贡献了它的[runC][2]核心给OCP作为构建构建容器工具的基础。同样还有[containerd][3],作为守护进程或者服务端用于控制runC的实例。Docker 1.11现在使用的是捐赠和公开的版本。 + +>在InfoWorld的[Docker初学者指南][4]中深入这个热门开源框架。今天就拿来看!|在[InfoWorld每日简讯][5]中获取今日的技术新闻。 + +>Docker此举挑战了它的容器生态仍[主要由Docker自身决定][6]的传说。它并不是为了作秀才将容器规范和运行时细节贡献给OCP。它希望项目将来的开发越开放和广泛越好。 + +![](http://images.techhive.com/images/article/2016/04/docker-runc-100656060-large.idge.png) + +>Docker 1.11已经用贡献给OCP的runC和containerd进行了重构。runC如果需要可以被交换出去并被替换。 + +runC的[两位主要提交者][7]来自Docker,但是来自Virtuozzo(Parallels fame)、OpenShift、Project Atomic、华为、GE Healthcare、Suse Linux也都是提交的常客。 + +Docker 1.11中一个更明显的变化是先前Docker运行时在Docker中是唯一可用的,并且评论家认为这个会限制用户的选择。runC运行时现在是可交换的;虽然Docker在发布时将runC作为默认的引擎,但是任何兼容的引擎都可以被交换进入。(Docker同样希望它可以不用杀死并重启现在运行的容器,但是这个作为今后的改进规划。) + +Docker正在将基于OCP开发流程作为内部更好的方式去创建它的产品。在它的发布1.11的[官方博客中称][8]:“将Docker切分成独立的工具意味着更专注的维护者,最终有更好的软件质量。” + +除了修复长期以来存在的问题何确保Docker的runC/containerd跟上步伐,Docker还在Docker 1.11中加入了一些改进。Docker Engine现在支持VLAN和IPv6服务发现,并且会自动在多个相同别名容器间执行DNS轮询负载均衡。 + + + +------------------------------------------------------------------------------ + +via: http://www.infoworld.com/article/3055966/open-source-tools/docker-111-adopts-open-container-project-components.html + +作者:[Serdar Yegulalp][a] +译者:[geekpi](https://github.com/geekpi) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](https://linux.cn/) 荣誉推出 + +[a]: http://www.infoworld.com/author/Serdar-Yegulalp/ +[1]: https://blog.docker.com/2016/04/docker-engine-1-11-runc/ +[2]: http://runc.io/ +[3]: https://containerd.tools/ +[4]: http://www.infoworld.com/resources/16373/application-virtualization/the-beginners-guide-to-docker#tk.ifw-infsb +[5]: http://www.infoworld.com/newsletters/signup.html#tk.ifw-infsb +[6]: http://www.infoworld.com/article/2876801/application-virtualization/docker-reorganization-grows-up.html +[7]: https://github.com/opencontainers/runc/graphs/contributors +[8]: https://blog.docker.com/2016/04/docker-engine-1-11-runc/ + + From e7141ee257ce8e48a89a19c261847816ca0bf08b Mon Sep 17 00:00:00 2001 From: willowyoung <1079902707@qq.com> Date: Mon, 18 Apr 2016 23:37:53 +0800 Subject: [PATCH 3/3] Translated by willowyoung --- ...ocessing at NASA with open source tools.md | 71 +++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 translated/tech/20160304 Image processing at NASA with open source tools.md diff --git a/translated/tech/20160304 Image processing at NASA with open source tools.md b/translated/tech/20160304 Image processing at NASA with open source tools.md new file mode 100644 index 0000000000..e3d59b0f51 --- /dev/null +++ b/translated/tech/20160304 Image processing at NASA with open source tools.md @@ -0,0 +1,71 @@ +# 在NASA中使用开源工具进行图像处理 + +关键词:NASA,图像处理,Node.js,OpenCV + +![](https://opensource.com/sites/default/files/styles/image-full-size/public/images/life/nasa_spitzer_space_pink_spiral.jpg?itok=3XEUstkl) + +这个已逝的夏天,我是位于格伦的 [NASA](http://www.nasa.gov/centers/glenn/home/index.html) [GVIS](https://ocio.grc.nasa.gov/gvis/) 实验室的研究生,我将我对开源的热情带到了那里。我的任务是提高我们实验室对 Dan Schroeder 开发的一个开源流体动力学模拟器的贡献。原本的模拟器为用户呈现出可以用鼠标绘制的障碍,用来计算流体动力学模型。我们团队的贡献是加入图像处理的代码,这些代码分析实况视频的每一帧以显示一个物体如何与液体相互作用。而且,我们还要做更多事情。 + +我们想要让图像处理部分更加健全,所以我致力于改善图像处理库。 + +基于新的库,模拟器可以检测轮廓、进行空间坐标变换以及找到物体的质心。图像处理并不直接与流体动力学模拟器物理相关。它用摄像头检测物体,并且获取物体轮廓,为流体模拟器创建一个障碍物。然后,流体模拟器启动,输出结果会被投射到真实物体上。 + +我的目标是通过以下三种方式改进模拟器: + +1. 找寻物体的轮廓 +2. 找寻物体的质心 +3. 能对物体中心进行相关的精确转换 + +我的导师建议我安装 [Node.js](http://nodejs.org/), [OpenCV](http://opencv.org/), 和 [Node.js bindings for OpenCV](https://github.com/peterbraden/node-opencv).。在等待软件安装的过程中,我查看了 OpenCV 的 [GitHub 主页](https://github.com/peterbraden/node-opencv) 上的示例源码。我发现示例源码使用 JavaScript 写的,而我还不懂 JavaScript ,所以我在 Codecademy 上学了一些课程。两天后,我对 JavaScript 依旧生疏,不过我还是开始了我的项目。。。它包含了更多的JavaScript。 + +示例的轮廓检测代码工作得很好。事实上,它使得我用几个小时就完成了第一个目标!为了获取一幅图片的轮廓,它看起来像这样: + +![](https://opensource.com/sites/default/files/resize/image_processing_nasa_1-520x293.jpg) + +> 包括所有轮廓的原始图, + +示例的检测轮廓的代码工作得有点好过头了。不仅物体的轮廓被检测到了,整个图片中的轮廓都检测到了。这会导致模拟器要与那些没用的轮廓打交道。这是一个严重的问题,因为它会返回错误的数据。为了避免模拟器接触到不想要的轮廓,我加了一个区域约束。轮廓要位于一定的区域范围内才会被画出来。区域约束使得轮廓变干净了。 + +![](https://opensource.com/sites/default/files/resize/image_processing_nasa_2-520x293.jpg) + +> 过滤后的轮廓,包含了阴影轮廓 + +虽然无关的轮廓没有了,但是图像还有个问题。图像本该只有一个轮廓,但是它来回绕了自己两次,没有完整地圈起来。区域在这里不能作为决定因素,所以必须试试其他方式。 + +这一次,我不是直接去找寻轮廓,而是先将图片转换成二值图。二值图是转换之后只有黑白像素的图片。为了获取到二值图我先把彩色图转成灰度图。转换之后我再用阈值函数对图片进行处理。阈值函数遍历图片每个像素点的值,如果值小于 30 ,像素的颜色就会改成黑色。否则则反。在原始图片转换成二值图之后,结果变成这样: + +![](https://opensource.com/sites/default/files/resize/image_processing_nasa_3-520x293.jpg) + +> 二值图。 + +然后我获取了二值图的轮廓,结果是一个更干净的轮廓,没有了阴影轮廓。 + +![](https://opensource.com/sites/default/files/image_processing_nasa_4.jpg) + +> 最后的干净轮廓。 + +这个时候,我可以获取干净的轮廓、计算质心了。可惜的是,我没有足够的时间去完成质心的相关变换。因为我的实习时间不多了,我开始考虑我在这段有限时间内能做的其它事情。其中一个就是边界矩形。边界矩形是包含了图片轮廓的最小四边形。边界矩形很重要,因为它是在页面上缩放轮廓的关键。虽然很遗憾我没时间利用边界矩形做更多事情,但是我仍然想去了解更多,因为这是个很有用的工具。 + +最后,经过以上的努力,我完成了对图像的处理! + +![](https://opensource.com/sites/default/files/resize/image_processing_nasa_5-521x293.jpg) + +> 最后图像,红色的边界矩形和质心。 + +当这些图像处理代码写完之后,我用我的代码替代了模拟器中的老代码。非常意外的,它可以工作。 + +嗯,基本可以。 + +程序有内存泄露,每 1/10 秒泄露 100MB 。我很高兴原因不是我的代码。坏消息是修复它并不是我能控制的。好消息是有个解决方法我可以使用。它并不是最理想的,方法是不断检查模拟器使用的内存,当使用内存超过 1 GB,重新启动模拟器。 + +在 NASA 实验室,我们使用很多的开源软件,没有这些开源软件的帮助,我不可能完成这些工作。 + +* * * + +via: [https://opensource.com/life/16/3/image-processing-nasa](https://opensource.com/life/16/3/image-processing-nasa) + +作者:[Lauren Egts](https://opensource.com/users/laurenegts) +译者:[willowyoung](https://github.com/willowyoung) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出