我想了解更多有关Prolog内部的知识,并了解其工作原理.
我知道如何使用它.但不是内部如何运作.Prolog中使用的算法和概念的名称是什么?
可能它构建了某种树结构或有向对象图,然后在查询时,它使用复杂的算法遍历该图.可能是深度优先搜索.可能有一些源代码,但首先从高层次的角度来看它会很棒.
我真的很喜欢人工智能,理解Prolog似乎是一个很好的开始,imho.我的想法是尝试重建类似的东西并完全跳过解析器部分.我需要知道我必须做的研究工作的方向.
我的目标是将RGB像素转换为CIELab色彩空间,以便在CIELab中进行一些特殊的计算.为此,我必须首先将RGB转换为XYZ,这是非常困难的部分.
我试图在Objective-C中实现这个算法(虽然大多使用普通的C),但结果是错误的.
我的代码基于easyrgb.com提供的伪实现.他们有一个在线颜色转换器,效果很好.他们说他们的伪代码与他们的转换器中使用的伪代码相同.
这是他们的伪代码:
var_R = ( R / 255 ) //R from 0 to 255
var_G = ( G / 255 ) //G from 0 to 255
var_B = ( B / 255 ) //B from 0 to 255
if ( var_R > 0.04045 ) var_R = ( ( var_R + 0.055 ) / 1.055 ) ^ 2.4
else var_R = var_R / 12.92
if ( var_G > 0.04045 ) var_G = ( ( var_G + 0.055 …
Run Code Online (Sandbox Code Playgroud) 我需要计算两种颜色之间的Delta-E距离.在CIELab颜色空间中使用两种颜色执行此操作的算法如下所示:
是否有已知的此算法的开源实现?这并不难实现,但是从我上次尝试实现色彩空间转换算法开始,我不想在已经上路并经过测试的情况下重新开发轮子.
CIEDE2000也会更好,更准确,但也可能在iPhone上有点过分.我猜CIE94会很好.
我喜欢在Prolog做一些事情.只需要一台适合Mac的好IDE,就可以让它不是一个痛苦的屁股.你推荐哪种IDE?
在学习OpenGL ES 2.0的过程中,我发现glBindFramebuffer
在线查找OpenGL ES相关符号很不方便.也许有更好的方法?是否有更好的OpenGL ES文档浏览器?
我不是数学家,但想深入AI.我在亚马逊上进行了搜索,并且在架子上出现了数万本书(好吧,差不多).
我应该选择哪一个人工智能初学者而没有太多的数学知识?我的意思是我不想要一本只用公式解释一切的书.几年前,我有一个这样的人,并且不再考虑人工智能了.
我发现了一些关于两者的简短文章,对我而言,听起来两者都是通过逻辑来解决问题,类似于Prolog的工作原理.我必须补充一点,我是这个领域的新手,所以我可能错了.非常错误.
只是在学习这些东西时澄清:
如果我有一个场景,只有一个矩形声明如下:
const Vertex Vertices[] = {
{{1, -1, -7}, {1, 0, 0, 1}}, // X Y Z, R G B A
{{1, 1, -7}, {0, 1, 0, 1}},
{{-1, 1, -7}, {0, 0, 1, 1}},
{{-1, -1, -7}, {0, 0, 0, 1}}
};
Run Code Online (Sandbox Code Playgroud)
调用顶点着色器渲染一帧的频率是多少?我相信4次.
但是顶点着色器中的变量变量会进行一些插值.片段着色器被更频繁地调用(通常对于每个像素一次).它是否正确?
我正在学习在 OpenGL ES 中使用着色器。
例如:这是我的游乐场片段着色器,它采用当前视频帧并使其灰度化:
varying highp vec2 textureCoordinate;
uniform sampler2D videoFrame;
void main() {
highp vec4 theColor = texture2D(videoFrame, textureCoordinate);
highp float avrg = (theColor[0] + theColor[1] + theColor[2]) / 3.0;
theColor[0] = avrg; // r
theColor[1] = avrg; // g
theColor[2] = avrg; // b
gl_FragColor = theColor;
}
Run Code Online (Sandbox Code Playgroud)
theColor
表示当前像素。还可以访问同一坐标处的前一个像素会很酷。
出于好奇,我想将当前像素的颜色添加或乘以前一个渲染帧中像素的颜色。
我怎样才能保留之前的像素并将它们传递给我的片段着色器以便对它们做一些事情?
注意:它是 iPhone 上的 OpenGL ES 2.0。
我发现我的片段着色器仅限于OpenGL ES视口的像素尺寸.
我可以创建一个"屏幕外片段着色器"或渲染环境,它具有更多像素用于渲染吗?