일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
- public
- Pointer
- Android
- atmega328
- digitalRead
- Encapusulation
- preprocessing
- Unity
- flutter
- sensor
- APP
- memory
- wpf
- inheritance
- aduino
- Read
- Overloading
- SERIAL
- UNO
- stream
- parameter
- length
- Contour
- Binary
- mfc
- Class
- compare
- file access
- java
- Barcode
- Today
- Total
목록분류 전체보기 (287)
폴크(FOLC)

# 많은 데이터를 이용해 데이터들의 패턴을 분석하고 결과를 예측하도록 하는 알고리즘을 설계한다. > 컴퓨터를 이용해서 분석하고 추론하는 알고리즘과 기술을 개발하는 분야 > 경험을 통해 자동으로 문제점과 개선점을 발견하도록 컴퓨터 알고리즘을 구성 > 데이터의 평가 및 일반화를 통해 아직 알 수 없는 데이터에 대한 처리 예제) # 카테고리 분류 모델 : 주어진 데이터 포인터의 클래스를 예측하는 모델 > 먼저 레이블 된 학습 데이터로 학습한 후, 새로 입력된 데이터가 어느 클래스에 속하는 지를 예측 > 카테고리는 때때로 레이블 또는 클래스라고 한다. > 분류 예측 모델링은 입력 변수(X)에서 이산 출력 변수(y)로의 매핑 함수(f)를 근사화 > 분류는 대상이 입력 데이터와 함께 제공되는 지도 학습이다. # 자..

# 자바 플랫폼을 위한 오픈 소스 애플리케이션 프레임워크 > 동적인 웹 사이트를 개발하기 위한 여러 가지 서비스를 제공하고 있다. # 공공기관의 웹 서비스 개발 시 사용을 권장 > 특히, 전자정부 표준프레임워크의 기반 기술로서 쓰이고 있다. # 로드 존슨이 2002년에 개발 > 저서인 Expert One-on-One J2EE Design and Development 에 발표 #2003년 6월에 최초로 아파치 2.0 라이선스로 공개되었으며 주요 버전 이력은 다음과 같다. > v1.0 : 2004년 03월 > v2.0 : 2006년 10월 > v2.5 : 2007년 11월 > v3.0 : 2009년 12월 > v3.1 : 2011년 12월 > v4.0 : 2013년 12월 > v5.0 : 2017년 09월

# 썬 마이크로시스템즈에서 제임스 고슬링이 팀원들과 같이 개발한 객체 지향적 프로그래밍 언어 > 1991년 시작 ~1995년 그린 프로젝트를 발표 > 가전기기에서 동작하는 프로그램으로 개발했지만 현재 웹 애플리케이션 개발에 사용되고 있다. # 유닉스 기반으로 문법적인 특성은 C 언어와 비슷 > 코드가 플랫폼 독립적이고 컴파일러는 특수한 바이너리 형태로 변환한다. # 프로그램을 실행하기 위해서는 JVM(Java Virtual Machine)이라는 특수한 환경이 필요하다. > 자바 바이트코드를 어느 플랫폼에서나 동일한 형태로 실행시킬 수 있다. # CPU나 운영 체제의 종류와 상관없이 JVM을 설치할 수 있는 환경에서는 실행 가능 > 웹 애플리케이션의 특성과 맞아떨어져 폭발적인 인기를 끌게 됨.

# 내장된 웹 브라우저 컴포넌트로 앱을 임베딩하는 것을 말한다. 즉, 앱 내에 웹 브라우저(HTML iframe)를 넣는 것이다. > 웹 페이지를 보기 위해서 또는 앱 안에서 HTML을 호출하여 앱을 구현하는 하이브리드 형태로 이용된다. > Javasript SDK 를 사용하고 있는 웹 페이지의 경우에는 다음과 같은 형태로 임베딩이 가능하다. 1. pubspec.yaml 설정 추가 # dependencies - flutter_inappwebview: ^5.3.2 2. /android/app/src/main/AndroidManifest.xml 옵션 설정하기 # 메니페시트 영역 # 안드로이드 영역 android:usesCleartextTraffic="true"> 3. /android/app/src/build..

# 웹 페이지에서 JS-SDK를 사용할 경우 InAppWebView 에서 kakao 등 외부 url 을 연동하여 올바르게 동작하도록 하기 위해서는 다음과 같은 처리가 필요하다. # Android 11 이상에서 JS-SDK 을 이용하여 기능을 구현하는 경우 > AndroidManifest.xml 에 패키지 명을 추가한다. 그렇지 않으면, Android Framework 에서 호출을 차단한다. ... # 안드로이드 앱에서 웹뷰를 통해 앱을 실행하려면 Intent URI를 이용한다. import 'package:url_launcher/url_launcher.dart'; InAppWebViewGroupOptions option = InAppWebViewGroupOptions( crossPlatform: InAp..

# web site 에 존재하는 Image 를 Local Storage 에 저장하는 방법 > http 방식 이용 # 관련 소스 코드 > using System.Net; > HttpWebRequest REQ = (HttpWebRequest)WebRequest.Create(cover_image_full_path); > HttpWebResponse RES = (HttpWebResponse)request.GetResponse(); > bool bImage = RES.ContentType.EndsWith("image/jpeg", StringComparison.OrdinalIgnoreCase); > if (bImage) > { > using (Stream inputStream = response.GetRespons..

# xls 파일에 Local Storage 에 있는 Image 를 Load 해서 추가 하려면 Picture 형태의 정보를 이용한다. > 추가하는 이미지의 크기를 변경할 수 있다. ( LockAspectRatio ) # 관련 소스 코드 > using Excel = Microsoft.Office.Interop.Excel; > Excel.Range PositionXY = (Excel.Range)workSheet.Cells[Row, Col]; > Excel.Pictures excelPictures = workSheet.Pictures(Type.Missing) as Excel.Pictures; > Excel.Picture pictureInfo = excelPictures.Insert(strFilePath, Sys..

# Flutter Widget 에 Unity 를 삽입하여 AR, XR 등의 ARFoundation 관련 기능을 사용하는 경우 발생하는 문제점 > flutter_unity_widget 4.2.1 에서 화면 전환으로 인한 충돌 부분 > Permission 문제로 Android 와 Unity 에서 Camera 사용 권한 적용 필요 → 최초 설치한 상태 (1회) 에는 카메라 사용 권한이 없는 관계로 Permission 관련 메시지가 표기 된다. 하지만, App 이 2번째 실행되는 경우에는 자동적으로 권한 관련 메시지를 묻지 않는다. → flutter unity widget DLL 에서 CAMERA 관련 사용 권한 적용이 진행되지 않는 관계로 화면이 멈추는 현상 발생 # 상기 문제 해결 방법1 ( 임시 조치 방법..

# 인증서 (jks) 파일은 분실하지 않도록 주의한다. > 추후 app 의 대한 정보를 udpate 하거나 변경이 필요한 경우에는 문제가 될 수 있다. > 만약, 분실했을 경우에는 google play 지원팀에 문의를 해서 도움을 받는다. # Android Project 를 OPEN 한다. # Build - Generate Signed Bundle / APK... 선택 # Android App Bundle 선택 ( aab 파일 생성 ) # 필요한 정보를 입력하고 NEXT > 파일은 D:\ 에 저장한다. C:\ 로 저장하게 되면 가끔씩 권한문제로 access 차단이 발생하여 aab 파일 생성이 안되는 경우가 있다. # release 상태가 포함되어 있는지 확인하고 NEXT 해서 마무리한다.

# Android 는 배포 버전이 https://search.google.com/search-console/about을 통해서 관리 되는데, 외부로 공개되는 버전과 내부로 관리하는 버전을 분리 할 수 있도록 되어 있다. > 외부로 공개 되는 버전은 versionName > 내부로 관리 하는 버전은 versionCode > Google console 에서 aab 파일의 버전을 downgrade 비허용 하고 versionCode 의 숫자로 관리 한다. > update 나 release 를 계속해서 진행하기 위해서는 versionCode 값을 계속 증가(최대 2100000000) 시킨다. # 배포를 위해서 versionCode 와 versionName 은 다음의 위치 파일을 수정한다. > ProjectFold..

# 최소화 버튼을 눌렀을 때 프로그램을 트레이 아이콘 형태로 축소 시켜서 가동시키는 방법 >>> 다시 요청하면 윈도우상에 원래 크기로 프로그램을 표시한다. # 공용 컨트롤 에서 NotifyIcon 을 검색 후 선택하여 리소스 화면에 끌어놓는다. 그리고 이름을 TrayIcon 으로 변경하고 Text 에는 표시되는 이름이므로 Application 이름을 기록한다. >>> 추가적으로 Icon 도 변경 가능하고 ContextMenu 도 연결 가능한다. # 화면이 축소되는 상황에서 TrayIcon 으로 전환하기 위해서 resize 이벤트 함수를 생성한다. private void NotifyResizeTrayIcon(object sender, EventArgs e) { if (this.WindowState == F..

# toast message 이용 > 화면에 message 를 표시 해준다. # 소스 코드 > import 'package:fluttertoast/fluttertoast.dart'; > > Fluttertoast.showToast( > msg: "메시지내용", > toastLength: Toast.LENGTH_SHORT, > gravity: ToastGravity.CENTER, > timeInSecForIosWeb: 1, > backgroundColor: Colors.red, > textColor: Colors.white, > fontSize: 26.0 > );

# webview_flutter 이용 > web 서버와 message 를 주고 받는다. # 소스 코드 > import 'package:webview_flutter/webview_flutter.dart'; > > WebViewController _webviewcontroller; > > WebView(initialUrl: 'http://-----.--.--', > javascriptMode: JavascriptMode.unrestricted, > onWebViewCreated: (WebViewController webViewController) { _webviewcontroller = webViewController; }, > javascriptChannels: { _toasterJavascriptChan..

1. UnityMessageManager 이용 > NativeAPI.cs + SingletonMonoBehaviour.cs + UnityMessageManager.cs * 소스 코드 ( script.cs ) > using System.Collections; > using System.Collections.Generic; > using UnityEngine; > using UnityEngine.XR; > using UnityEngine.XR.ARFoundation; > public class MessageTest : MonoBehaviour > { > public UnityMessageManager unitymessageManager; > void Awake() > { > unitymessageManage..

Visual Studio S/W 에서 확장팩을 설치 해야 한다. 1. GitHub Extension for Visual Studio 설치 2. VSIX 자동 설치 # Modify 선택 3. GitHub 가입 - ID, PW 생성 # Repository 를 확보하기 위한 작업 4. 기존 솔루션 GitHub 에 연결 # Visual Studio 오른쪽 하단에 "소스 제어에 추가" -> Git(G) 5. 팀 탐색기 - GitHub에 게시 6. 솔루션 명과 설명을 작성 # 소스를 공개할지? 비공개로 할지? check -> 게시 7. 동기화 진행 # Local 에 있는 데이터를 GitHub 로 전송/수신 하면서 데이터 동기화 진행한다.

# 디지털 이미지 처리 # 이미지의 상태 정보에서 특별한 영역을 추출한다. > haarcascade 로 처리 # 이미지 처리 - OpenCV 4.5.3 으로 테스트 # 이미지의 상태 정보에서 특별한 영역을 추출 > srcImage : 입력, dstImage : 결과, faces, eyes: 결과 정보 # cv::CascadeClassifier > cv::String face_cascade_name = "haarcascades\\haarcascade_frontalface_alt.xml"; > cv::String eyes_cascade_name = "haarcascades\\haarcascade_eye_tree_eyeglasses.xml"; > cv::CascadeClassifier face_cascade;..

# 디지털 이미지 처리 # 이미지의 상태 정보에서 특별한 영역을 추출한다. > blob 으로 처리 # 이미지 처리 - OpenCV 4.5.3 으로 테스트 # 이미지의 상태 정보에서 특별한 영역을 추출 > srcImage : 입력, contours : 결과, minAreaRect : 결과 정보 # cv::findContours > double thresh = 128.0, max_val = 255.0; > int type = cv::THRESH_BINARY; > cv::threshold(srcImage, dstImage, thresh, max_val, type); > int mode = cv::RETR_TREE, method = cv::CHAIN_APPROX_NONE; > vector contours; > ..

# 디지털 이미지 처리 # 이미지의 상태 정보에서 특별한 정보를 생성한다. > 추출된 정보를 일반화한다. # 이미지 처리 - OpenCV 4.5.3 으로 테스트 # 이미지의 상태 정보에서 특별한 정보를 생성 - 거리 계산 > src : 입력, dst : 결과 # cv::norm > vector Points1, Points2; > cv::Vec4f line1, line2; > int distType = cv::DIST_L2; > double param = 0.0, double reps = 0.01, double aeps = 0.01; > cv::fitLine(cv::Mat(Points1), line1, distType, param, reps, aeps); > cv::fitLine(cv::Mat(Points..

# Unity 프로젝트 컴파일 관련 > 컴파일 정상 후 Install 하고 나서 화면이 black 으로 표시되는 오류 발생 android -> unityLibrary -> proguard-unity.txt 의 내용을 수정해주면 된다. -keep class bitter.jnibridge.* { *; } -keep class com.unity3d.player.* { *; } -keep interface com.unity3d.player.IUnityPlayerLifecycleEvents { *; } -keep class org.fmod.* { *; } -keep class com.google.androidgamesdk.ChoreographerCallback { *; } -keep class com.google..

# Unity 프로젝트 컴파일 관련 > 라이브러리(AR) 연동에서 컴파일 오류 발생 FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':app:processReleaseManifest'. > Manifest merger failed with multiple errors, see logs * Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights. * Get more help at htt..