Tag: math

以编程方式纠正鱼眼失真

BOUNTY状态更新: 我发现如何映射线性镜头 ,从destination坐标到source坐标。 你如何计算从中心到鱼眼的直线距离? 1)。 我真的很难扭转它,并将源坐标映射到目标坐标。 什么是相反的,在我发布的转换函数风格的代码中? 2)。 我也看到,我的失真在一些镜头上是不完美的 – 可能是那些不是严格线性的。 这些镜头的等效源和目标坐标是多less? 同样,更多的代码不仅仅是math公式,请… 问题如最初所述: 我有一些观点用鱼眼镜头描述的位置。 我想将这些点转换成直线坐标。 我想要保持形象不变。 我已经find了如何生成鱼眼效果的说明,但没有find如何反转的说明。 还有一篇博客文章介绍了如何使用工具来完成这项工作。 这些照片是从那个: (1) : SOURCE 原始照片链接 input: 鱼眼畸变修复的原始图像。 (2) : DESTINATION 原始照片链接 输出: 校正图像(技术上还有透视校正,但这是一个单独的步骤)。 你如何计算从中心到鱼眼的直线距离? 我的function存根如下所示: Point correct_fisheye(const Point& p,const Size& img) { // to polar const Point centre = {img.width/2,img.height/2}; const Point rel = {px-centre.x,py-centre.y}; const […]

C ++和OpenGLmatrix顺序之间的混淆(row-major vs column-major)

我对matrix定义感到困惑。 我有一个matrix类,基于以下观察结果,它包含一个我认为是行主要的float[16] : float matrixA[16] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 }; float matrixB[4][4] = { { 0, 1, 2, 3 }, { 4, 5, 6, 7 }, { 8, 9, 10, 11 }, { 12, 13, 14, 15 } }; matrixA和matrixB在内存中具有相同的线性布局(即所有数字都是有序的)。 根据http://en.wikipedia.org/wiki/Row-major_order这表示行主布局。 […]

正数在JavaScript中的负数?

基本上,ABS的相反。 如果我有: if($this.find('.pdxslide-activeSlide').index() < slideNum-1){ slideNum = -slideNum } console.log(slideNum) 不pipe什么控制台总是返回一个正数。 我该如何解决? 如果我做: if($this.find('.pdxslide-activeSlide').index() < slideNum-1){ _selector.animate({left:(-slideNum*sizes.images.width)+'px'},750,'InOutPDX') } else{ _selector.animate({left:(slideNum*sizes.images.width)+'px'},750,'InOutPDX') } 它适用于tho,但它不是“干”,只是愚蠢的有整个代码只是为了-

覆盖地球与六angular形地图瓷砖

许多战略游戏使用六angular形瓷砖。 其中一个主要的优点是任何瓦片的中心与其所有相邻的瓦片之间的距离是相同的。 我想知道是否有人想把传统的地理系统(经度/纬度)与六边形瓷砖系统结合起来。 我认为用六angular形瓷砖覆盖地球仪并能够将地理坐标映射到瓷砖会很有趣。 有没有人看过任何远在此之前? UPDATE 我正在寻找一种细分球体表面的方法,以便每个球体具有相同的表面积。 理想的情况是,相邻分区的中心是等距的。

将逗号后的数字四舍五入为2位数字

我不知道该怎么做? 我添加了逗号,结果当然总是一个数字,逗号之后的数字太多了。 任何人?

马尔可夫链和有限状态机是一样的吗?

有限状态机是一个马尔可夫链的实现吗? 两者有什么区别?

JavaScript:计算一个数字的第n个根

我正在尝试使用JavaScript获取数字的第n个根,但是我没有看到使用内置Math对象的方法。 我可以俯视吗? 如果不… 有一个math库,我可以使用有这个function? 如果不… 什么是自己做这个最好的algorithm?

具有未知数量的簇的无监督聚类

我有一个三维vector大集。 我需要根据欧几里德距离对它们进行聚类,使得任何特定聚类中的所有向量之间的欧氏距离小于阈值“T”。 我不知道有多less个集群存在。 最后,可能存在不属于任何聚类的单个vector,因为其欧几里得距离不小于空间中任何vector的“T”。 现在应该使用哪些现有的algorithm/方法? 谢谢Abhishek S

不同的浏览器中使用相同的math结果

编辑:因为铬已经更新浏览器 – 这个问题是一些多余的,因为他们已经修复了一个内部的错误,这意味着这个问题不再发生。 我有一个锚定在canvas中心的圆圈animation。 圆越大,运动越不稳定。 但不仅如此,对于我来说,至less在Chrome浏览器到Firefox的情况下会更糟。 math是在这个函数中完成的: function update(deltaTime){ var centerX = canvas.width/2; var centerY = canvas.height/2; i.currentAngle = (i.currentAngle || 0) + (deltaTime/1000 * i.rotationSpeed); if(i.currentAngle>2*Math.PI){ i.currentAngle-=2*Math.PI; } ix = centerX + (i.radius*i.factor) * Math.cos(i.currentAngle); iy = centerY + (i.radius*i.factor) * Math.sin(i.currentAngle); } 这是工作示例中的代码: http://jsfiddle.net/96QDK/ Chrome输出: Firefox输出: 火狐似乎是最接近我的目标,但铬只是古怪。 为什么我会得到这样不同的结果? 我应该提一下,我问过几个人他们看到了什么,而且每个人都看到了不同的错误。

什么是一个很好的algorithm来确定一个input是一个完美的平方?

可能重复: 最快的方法来确定一个整数的平方根是一个整数 怎么看一个数字是一个完美的广场 ? bool IsPerfectSquare(long input) { // TODO } 我正在使用C#,但这是语言不可知的。 奖金分明确和简单(这不意味着代码高尔夫)。 编辑:这比我预期的要复杂得多! 事实certificate,双精度的问题体现在两个方面。 首先,Math.Sqrt需要一个长度不能精确保持的双倍(感谢Jon)。 其次,当你有一个巨大的,接近完美的平方时,双精度会损失小的值(.000 … 00001)。 例如,我的执行失败Math.Pow(10,18)+1(我的报告是正确的)这个testing。