Get it on Google Play


Wm뮤 :: '윈도우폼' 카테고리의 글 목록 (2 Page)

블로그 이미지
가끔 그림그리거나 3D모델링하거나
취미로 로봇만드는
퇴직한 전자과 게임프로그래머
2020.3.48f1 , 2022.3.6f1 주로 사용
모카쨩
@Ahzkwid

Recent Comment

Archive


'윈도우폼'에 해당되는 글 13건

  1. 2020.10.31 자주 쓰는 윈폼 코드 모음
  2. 2018.01.28 c# 윈도우 폼
  3. 2017.11.19 OPENCV 오류
  4. 2017.11.19 OPENCV 함수
  5. 2017.11.19 OPENCV 준비
2020. 10. 31. 09:56 윈도우폼

 

 

윈폼의 Debug로그이다.

System.Diagnostics.Debug.WriteLine("디버그 메세지");

 

팝업띄우는 버전

System.Windows.Forms.MessageBox.Show("디버그 메세지");

 

 

윈폼 리퀘스트

//v2
public static string DownloadText(string url)
{
    try
    {
        var webClient = new System.Net.WebClient();
        return webClient.DownloadString(url);
    }
    catch (Exception ex)
    {
        System.Diagnostics.Debug.WriteLine(ex.Message);
        return null;
    }
}

//v1
/*
public static string DownloadText(string url)
{
    try
    {
        var webClient = new System.Net.WebClient();
        var response = webClient.OpenRead(url);
        using (var streamReader = new System.IO.StreamReader(response))
        {
            string result = streamReader.ReadToEnd();
            streamReader.Close();
            return result;
        }
    }
    catch (Exception ex)
    {
        System.Diagnostics.Debug.WriteLine(ex.Message);
        return null;
    }
}
*/

 

 

현재 컴퓨터 유저 이름을 반환합니다. 

System.Environment.UserName

 

 

 

 

 

Lerp

double Lerp(double a,double b,double t)
{
    //return a*(1.0-t)+b*t;
    return a + (b - a)* t;
}
Vector3 Lerp(Vector3 a, Vector3 b, float t)
{
    return a + (b - a)* t;
}

 

 

 

새창 띄울때

var form = Application.OpenForms[nameof(Form2_Prediction)];
if (form==null)
{
    form = new Form2_Prediction();
    form.Show();
}
else
{
    form.Activate();
}

 

 

 

프로세스 확인 (unity가 켜져있는지 확인하는 코드이다)

var processes=System.Diagnostics.Process.GetProcesses();
var processesNames = System.Array.ConvertAll(processes, x => x.HasExited ?"": x.ProcessName).ToList();
processesNames = processesNames.GroupBy(x=>x).Select(x=>x.First()).ToList();
processesNames = processesNames.FindAll(x => string.IsNullOrWhiteSpace(x) == false);
processesNames = processesNames.FindAll(x => x.ToLower().Contains("unity"));
foreach (var processesName in processesNames)
{
    Debug.Log(processesName);
}

 

 

콤보박스에 Enum 할당

var ProportionalOptionNames = System.Enum.GetNames(typeof(ProportionalOption));
ProportionalOptionBoxs[i].Items.AddRange(ProportionalOptionNames);

 

 

 

window form

.net

닷넷

'윈도우폼' 카테고리의 다른 글

c# 멀티스레드 기본소스  (0) 2020.11.23
c# 윈도우 폼  (0) 2018.01.28
OPENCV 오류  (0) 2017.11.19
posted by 모카쨩
2018. 1. 28. 17:19

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.

2017. 11. 19. 19:26 윈도우폼







is_block_type_valid(header- _block_use)

/*

CascadeClassifier를 전역으로 끄집어내니까 발생했음

그런데 실제론 vector메모리 문제라서 직접 할당해야함

vector<Rect> face_pos; 

face_pos.reserve(50);

이런식으로 쓰면됨

*/




wntdll_pdb로드되지 않음

/*

sleep함수를 쓰거나 종료될때 발생함

*/

'윈도우폼' 카테고리의 다른 글

c# 윈도우 폼  (0) 2018.01.28
OPENCV 함수  (0) 2017.11.19
OPENCV 준비  (0) 2017.11.19
posted by 모카쨩
2017. 11. 19. 19:21 윈도우폼


#include "opencv2\opencv.hpp"  //기본적으로 불러오는 헤더




static CascadeClassifier face_Cascade //검색 시스템의 클래스

face.load("haarcascade_frontalface_default.xml")) //이런식으로 불러와서 사용, 성공시 true반환

face_Cascade.detectMultiScale(Mat 이미지,vector<Rect> 저장할 위치, 지정된 값만큼 스케일을 바꾸면서 검색, 후보를 몇개나 찾아볼지, 검색옵션(하단참조)CV_HAAR_FIND_BIGGEST_OBJECT 

,Size 최소 사이즈 Size(10,10)이렇게 쓰면 됨,Size 최대사이즈)

검색옵션(or연산으로 중첩가능)

CV_HAAR_FIND_BIGGEST_OBJECT 중첩시 가장 큰거만 반환

CV_HAAR_SCALE_IMAGE 이미지의 스케일을 바꾸면서 검색

CV_HAAR_DO_ROUGH_SEARCH 한개만 찾음



Mat는 2차원 배열같은것, img대용품


cvtColor(입력 Mat, 출력 Mat, CV_RGB2GRAY); //그레이생성


cvSetImageROI(img_buff,cvRect(0,0, img_buff.size().width, img_buff.size().height)); //스케일변경인줄 알았는데 아닌듯






circle(Mat형 이미지, Point(x,y),크기,색상 Scalar(0, 0, 255),굵기,0);//원그리기


putText(Mat 이미지,표시할 문자열,Point(x,y),폰트 (하단참조),폰트 굵기(기본값1),색상 Scalar(255, 255, 255))


CV_FONT_HERSHEY_SIMPLEX //산세리프폰트 중간크기

CV_FONT_HERSHEY_PLAIN //산세리프폰트 작은크기

CV_FONT_HERSHEY_DUPLEX //세리프폰트 2줄

CV_FONT_HERSHEY_COMPLEX //세리프폰트 중간크기

CV_FONT_HERSHEY_TRIPLEX //세리프폰트 3줄

CV_FONT_HERSHEY_COMPLEX_SMALL //세리프폰트 작은크기

CV_FONT_HERSHEY_SCRIPT_SIMPLEX //필기체

CV_FONT_HERSHEY_SCRIPT_COMPLEX //필기체2

CV_FONT_ITALC //이탤릭체



Mat img = imread("Lenna.png"); //이미지열기

imwrite("copy.jpg", img );//저장하기


mat접근방법

//at접근, 간편하지만 느림

if (img_t.type() == CV_8UC1)//단일8비트 채널

{

for (int i = 0; i < img_t.cols; i ++)//x축

{

for (int j = 0; j < img_t.rows; j ++)//y축

{

img_t.at<uchar>(i, j) = 255;//밝기

}

}

}

if (img_t.type() == CV_8UC3)//3색 8비트 채널 

{

for (int i = 0; i < img_t.cols; i ++)//x축

{

for (int j = 0; j < img_t.rows; j ++)//y축

{


img_t2.at<Vec3b>(j, i)[0] = 255;//B

img_t2.at<Vec3b>(j, i)[1] = 255;//G

img_t2.at<Vec3b>(j, i)[2] = 255;//R

img_t2.at<Vec3b>(j, i)= Vec3b(255,255,255);//BGR

}

}

}





포인터접근

if (img_t2.type()==CV_8UC3)//3색 8비트 채널 

{

float _t;

int img_t2_channels= img_t2.channels();

for (int j = 0; j < img_t2.rows; j++)//y축

{

uchar * ptr_img_t = img_t2.ptr<uchar>(j);

for (int i = 0; i < img_t2.cols*img_t2_channels; i += img_t2_channels)//x축

{


float r, g, b, _max, _min;

float h, s, v;

//if (img_t2.channels() == 3)

r = ptr_img_t[i + 2];

g = ptr_img_t[i + 1];

b = ptr_img_t[i + 0];

}

}

}





캠 연결



VideoCapture cam;

if (cam.isOpened() == true)//연결되어있는지
{
cam.release(); //연결끊기
}
else
{
cam.open(target);//캠열기
cam.set(CV_CAP_PROP_FRAME_WIDTH, wid);//가로설정
cam.set(CV_CAP_PROP_FRAME_HEIGHT, hei);//세로설정
cam.set(CV_CAP_PROP_FPS, fps);//fps설정
}


'윈도우폼' 카테고리의 다른 글

c# 윈도우 폼  (0) 2018.01.28
OPENCV 오류  (0) 2017.11.19
OPENCV 준비  (0) 2017.11.19
posted by 모카쨩
2017. 11. 19. 17:29 윈도우폼






속성을 연다




c++일반의 디렉터리를 다음으로 바꿔준다

D:/OpenCV_2.4.12/opencv/build/include;%(AdditionalIncludeDirectories)

필요에 따라 해당위치로 가서 include할 파일을 폴더에서 꺼내준다





D:/OpenCV_2.4.12/opencv/build/include

를 추가하고 엔터




D:\OpenCV_2.4.12\opencv\build\x86\vc12\lib

를 추가하고 엔터








링커일반의 추가 라이브러리 디렉터리를 다음으로 바꿔준다

D:\OpenCV_2.4.12\opencv\build\x86\vc12\lib;%(AdditionalLibraryDirectories)








링커 입력란의 원래 있었던 종속성에 아래의 종속성을 추가해준다


원래 있었던 종속성

kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)


추가할 종속성

opencv_calib3d2412d.lib;opencv_contrib2412d.lib;opencv_core2412d.lib;opencv_features2d2412d.lib;opencv_flann2412d.lib;opencv_gpu2412d.lib;opencv_highgui2412d.lib;opencv_imgproc2412d.lib;opencv_legacy2412d.lib;opencv_ml2412d.lib;opencv_nonfree2412d.lib;opencv_objdetect2412d.lib;opencv_ocl2412d.lib;opencv_photo2412d.lib;opencv_stitching2412d.lib;opencv_superres2412d.lib;opencv_ts2412d.lib;opencv_video2412d.lib;opencv_videostab2412d.lib;










opencv_kit_2_4_12프로젝트용.zip를 프로젝트에 푼다

(알짜 모아서 직접 압축한거)



https://drive.google.com/open?id=1lsoj2iAXnFZXSW5hz5DCoAavLhg_B-XH



헤더에 

#include <opencv2\opencv.hpp>

를 넣고 쓴다

'윈도우폼' 카테고리의 다른 글

c# 윈도우 폼  (0) 2018.01.28
OPENCV 오류  (0) 2017.11.19
OPENCV 함수  (0) 2017.11.19
posted by 모카쨩

  • total
  • today
  • yesterday

Recent Post

저사양 유저용 블로그 진입