在纯 Java 中学习 JavaCV [关闭]

Posted

技术标签:

【中文标题】在纯 Java 中学习 JavaCV [关闭]【英文标题】:Learning JavaCV in pure Java [closed] 【发布时间】:2012-07-14 17:23:12 【问题描述】:

我正在努力学习 JavaCV。众所周知,缺乏这方面的教育材料是一个很大的问题。在 JavCV 主页中,他们为“OpenCV CookBook”一书中的 C++ 示例提供了大量示例。但情况是,它们不是 Java,它们在 SCALA 中!!!!现在我已经疯了!我知道网络上有很多例子,但我想从头到尾学习它,只有我能正确地做到这一点。 “OpenCV CookBook”是一本非常好的书,但它都是关于 C++ 中的 OpenCV,而不是 Java。

请有人帮我找一个更好的地方来学习 JavaCV。提供给我任何东西,URL、书籍等。但它必须是关于用 100% Java 学习 JavaCV,而不是用 Scala、C++、C 或任何其他语言!请帮忙!

【问题讨论】:

这是我第一次开始用 Python 学习 OpenCV 时的情况。 Python没有教程,都是C++。但我不得不以某种方式学习它并开始阅读 C++ 书籍并将其转换为自己的 python。而且花了很多时间。最后我想出了我自己的教程:opencvpython.blogspot.com,它专注于初学者。所以这就是我要告诉你的。从非常基本的示例中自己学习,一旦准备好该代码,就可以为未来的学习者编写自己的教程。不知何故,一个人必须采取主动。让它成为你!!! 【参考方案1】:

时代在变——OpenCV 也是如此。现在,一个纯 Java 包装器(不是 android)正在快速发展,允许任何人直接在桌面 Java 应用程序中使用 OpenCV 函数/

更新>

您可以在 OpenCV 示例目录中找到一些 Java 教程:samples/android

您还可以找到更多信息here。

现在,我很确定你会说你想要 Java,而不是 Android :)。但这需要一个解释。

出于各种原因——主要是效率和第二个可移植性到嵌入式平台,计算机视觉几乎完全用 C/C++ 完成。这是事实上的标准。每个人都使用它,有充分的理由和良好的结果。

C++ 代码库有不同的适配器,例如 Python 和 Java,但它们的存在是为了填补一些特定的空白:Python 用于快速原型设计,Java 用于连接 Android 主要语言。但在所有场景中,“真正的”算法开发都是使用 C/C++ 完成的。这就是为什么没有人关心其他语言的教程/书籍/示例。

结论:如果你想学图像处理,学C++或者Python。如果您想构建一些应用程序,请从 docs/android 教程中学习 OpenCV java 接口。但不要期望灵活性或对性能的控制。

更新说明

这里还有两件事要指定。

首先,随着 Android 的发展和 Python 越来越受欢迎,两种语言(和其他语言)的可用内容正在急剧增加。但在接下来的几年里,核心开发团队——以及最好的文档——将在 C++ 领域。

最后但并非最不重要的一点,您应该记住,在任何工作或编程领域,如果您坚持一种语言,您就死定了。原则很重要,你应该能够用各种语言来实现它们,你应该能够阅读和理解各种来源。一个程序员说他不能将伪代码翻译成 Java 怎么办?其他语言也差不多。

您可以阅读精彩的博文 Don't call yourself a programmer,了解为什么您应该忘记使用一种语言进行编程。

【讨论】:

感谢您的回复,我真的很感激:) 无论如何,至少,有没有一种方法可以在不学习 scala 的情况下将 scala 转换为 java?我的意思是,在线工具之类的? @Yohan :) 请阅读我更新的帖子。我希望你能明白。你可能会找到一些在线工具,或者(很可能)没有,但你应该明白你可以做到。 我没有告诉我我只会一种语言。我知道 C#.Net 和 VB.Net、JavaFX、一些 C++,当然还有一些 android。但这并不意味着一个人必须学习世界上所有可用的语言,因为他必须使用一个 API。与其这样,最好找到另一种方法,在本例中为 Xuggler API。 你知道吗,Scala 并不难!我没学过,但理解不是问题!! 是的,C++ 更好。我学会了

以上是关于在纯 Java 中学习 JavaCV [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

想在 C# 中学习 ActiveRecord 模式 [关闭]

如何在PHP中学习在线用户数? [关闭]

从题目中学习java语法

java 在Java Ch04中学习OOP

java中学习了swing可以做一个啥项目

在软件中学习算法和保存数据