假设给定的大小为64 * 64像素(M * N = 4096)的3位图像(L = 8)具有如下所示的强度分布。如何获得直方图均衡变换函数,然后计算图像的均衡直方图?
Rk nk
0 800
1 520
2 970
3 660
4 330
5 450
6 260
7 106
Run Code Online (Sandbox Code Playgroud) 我想稍微关注一下这个挑战.
我的目的是找到一些在系统内开发的解决方案.
在我公司(土木工程)的业务中,我有以下情况:
我们在数据库中注册了元素/材料,但我们的数千家供应商拥有相同的元素/材料,但名称不同但相似.
所以我有一个通过XML发票的元素列表(例如水泥).
另一方面,我在我的数据库中注册了相同类型的元素,但名称不同(在大多数情况下它们几乎相同),我想在发票清单中找到更像是比较它们的名称.
有没有类似贝叶斯算法,我可以比较名称,并在"0"和"1"之间的值?'1'将是100%相同的字符.
示例(我将更改水果的元素类型):
如果我必须比较:覆盆子
Invoice List - Values of Algortim
---------------------------------
strawberry ........ 0,89
blueberry ......... 0,77
cherry ............ 0,46
grape ............. 0,11
raspberry ......... 1,00
pineapple ......... 0,13
Run Code Online (Sandbox Code Playgroud)
重要的是在没有完美组合时找出最接近的名字.
还有其他技巧吗?
很高兴看到你们的想法!
在纪元之后我有秒(比如x,x是长长的数据类型).我希望使用<ctime>库将其转换为unix时间.问题是,我想要一个time_t变量gmtime()来工作,我无法将my x(long long)转换为time_t.
这就是我在做什么:
//x is number of seconds after epoch, I want that in unix time
time_t t=x;
printf("%s\n",asctime(gmtime(&t)));
Run Code Online (Sandbox Code Playgroud)
我能以某种方式进行类型x转换time_t吗?
我试图找出如何减少日期的日期,让我说我设置当前日期
set $date
Run Code Online (Sandbox Code Playgroud)
我怎样才能减少它的日期并获得该期限的日期?
例如,27jul2012减损5成为22jul2012
我已经定义了一个char数组:
char d[6];
Run Code Online (Sandbox Code Playgroud)
如果我对以下内容有误,请纠正我:
此时没有为变量分配内存d.现在我要初始化它:
d="aaaaa";
Run Code Online (Sandbox Code Playgroud)
在这种初始化之后,就没有必要释放内存; 它将自动完成.
我如何知道是否char[]已初始化?我正在寻找像这样的模式
if (filled(d)){..}
Run Code Online (Sandbox Code Playgroud)
另外,如何用一种角色填充char []?
我有一个加载在 Android 片段中的 web 视图。当用户点击 webview 中加载的网页上的链接时,我希望在我的应用程序之外的 Android 上的默认浏览器中加载新页面。任何想法如何做到这一点?谢谢!
到目前为止我所拥有的:
FrameLayout layout = new FrameLayout(context);
WebView webView = new WebView(getActivity());
webView.setBackgroundColor(Color.TRANSPARENT);
webView.loadUrl(InvestBetterURL);
webView.setWebViewClient(new WebViewClient(){
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url){
return false;
}
@Override
public void onPageStarted (WebView view, String url, Bitmap favicon)
{
view.setVisibility(View.GONE);
}
@Override
public void onPageFinished (WebView view, String url)
{
view.setVisibility(View.VISIBLE);
}
});
layout.addView(webView);
Run Code Online (Sandbox Code Playgroud) 我正在阅读"C++ Strategies and Tactics"这本书,并对以下代码感到困惑.作者说,手术可能不安全.但是,我还没有理由.你能帮助我吗?
#include <iostream>
#include <string.h>
void remove_blanks(char* cp)
{
char*p = cp;
while(*p)
{
if(*p != ' ')
*cp++ = *p;
++p;
}
*cp = '\0';
}
class String
{
public:
String(char* p = " "):str(new char[strlen(p) + 1])
{
strcpy(str,p);
}
~String()
{
delete []str;
}
operator const char* () const
{
return (const char*)str;
}
private:
char* str;
};
int main()
{
String s("hello world");
remove_blanks((char*)(const char*)s);
std::cout << s << ".\n";
}
Run Code Online (Sandbox Code Playgroud) 我试图通过以下函数捕获内存不足异常:
void allocMemory(buffer& thebuf, size_t size)
{
try
{
thebuf = buffer(size); // new char[] here
}
catch(bad_alloc& ex)
{
exception handling... // print some information
exit(1);
}
}
Run Code Online (Sandbox Code Playgroud)
处理应显示一些信息并关闭程序.这在Windows上运行良好,但在Linux上程序只是直接关闭终端上的"Killed".似乎OOM杀手在异常被捕获之前杀死了我的程序.
这是正常的吗?
如何在Linux上捕获内存不足?
PS我正在测试ubuntu 12.04 64位,仅使用4GB内存进行测试,没有交换空间,语言是C++.此外,如果我一次新增大量内存,该功能在Linux上运行.但是,如果我每次都做一点新事(例如:在循环中),程序将最终关闭终端上的"Killed"
任何帮助,将不胜感激.
我必须编写一个程序,找到用户输入的整数的平方根.但我遇到了一个问题 - 程序不计算sqrt.我在互联网上搜索问题,阅读所有解决方案,但他们没有帮助我.在这个论坛上有很多关于这个主题的问题,但是那里描述的解决方案对我不起作用.
实际上,sqrt当用户输入整数时,函数不起作用.当我设置一个值时,它完美地运行.换句话说,它找到一个常数的sqrt,但不是变量.
我用这段代码编译它(因为到处都写) gcc -o sqrt -lm sqrt.c
我正在研究Ubuntu.
这是代码:
#include<stdio.h>
#include<math.h>
main()
{
int a;
double b=sqrt(a);
scanf("%i", &a);
printf("sqrt of integer is %lf", b);
getchar();
getchar();
return 0;
}
Run Code Online (Sandbox Code Playgroud) 我已经为某些数据类型分配了内存并分配了一些值.现在使用的free是内存中的数据是否被删除?free如果未删除分配的数据,使用什么?谁能帮我吗?例如:
int *arr;
arr=(int*)malloc(sizeof(int)*1000);
assert(arr!=NULL);
/*Some operation*/
arr[123]=354;
//some operations
printf("%d",*(arr+123));
//calling some funcs
free(arr);
printf("\n%d",*(arr+123));
Run Code Online (Sandbox Code Playgroud) 我正在做一个小实验.
#include<cstdio>
#include<iostream>
using namespace std;
int main()
{
int A[5][5];
cout<<A[0]<<" "<<&A<<" "<<*A;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
它为所有情况打印相同的值.有人可以解释为什么会这样吗?
当我尝试编译此代码时
using namespace std;
namespace asf{
inline int operator|(int);
}
asf::operator|(int x){
return (x>1)?x*operator|(x-1):1;
}
int main(){
cout<<5|;
}
Run Code Online (Sandbox Code Playgroud)
我收到以下错误
[Error] 'int asf::operator|(int)' must have an argument of class or enumerated type
[Error] ISO C++ forbids declaration of 'operator|' with no type [-fpermissive]
[Error] 'int asf::operator|(int)' should have been declared inside 'asf'
[Error] 'int asf::operator|(int)' must have an argument of class or enumerated type
In function 'int main()':
[Error] expected primary-expression before ';' token
Run Code Online (Sandbox Code Playgroud)
怎么了?请帮忙.
我打算在我的大学里组织一个编码比赛.编码竞赛基于解决一些C程序.我需要通过一个应用程序评估他们的程序是否正确.是否有任何类型的应用程序或软件来评估他们的程序?提前致谢.
c++ ×6
c ×4
algorithm ×1
android ×1
bash ×1
c-strings ×1
compare ×1
comparison ×1
eclipse ×1
exception ×1
java ×1
linux ×1
math ×1
namespaces ×1
ubuntu-12.04 ×1