2021年7月17日開催「.NETラボ 勉強会 2021年7月」でのセッション スライドです。
Windows 11 が今年年末にリリースされると発表されました。
Windows 10 からのアップグレードも来年早々には開始されます。
これに向けて企業や組織の IT 管理者が準備すべきこと、リプレースやアップグレードをどう判断すべきか、解説します。
2021年7月17日開催「.NETラボ 勉強会 2021年7月」でのセッション スライドです。
Windows 11 が今年年末にリリースされると発表されました。
Windows 10 からのアップグレードも来年早々には開始されます。
これに向けて企業や組織の IT 管理者が準備すべきこと、リプレースやアップグレードをどう判断すべきか、解説します。
var msbuild = new MSBuild(2020);
var updates = msbuild.getUpdates("Azure", "Visual Studio", ".NET");
foreach (var update in updates)
{
update.Show();
}
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matchingharmonylab
公開URL:https://arxiv.org/pdf/2404.19174
出典:Guilherme Potje, Felipe Cadar, Andre Araujo, Renato Martins, Erickson R. ascimento: XFeat: Accelerated Features for Lightweight Image Matching, Proceedings of the 2024 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR) (2023)
概要:リソース効率に優れた特徴点マッチングのための軽量なアーキテクチャ「XFeat(Accelerated Features)」を提案します。手法は、局所的な特徴点の検出、抽出、マッチングのための畳み込みニューラルネットワークの基本的な設計を再検討します。特に、リソースが限られたデバイス向けに迅速かつ堅牢なアルゴリズムが必要とされるため、解像度を可能な限り高く保ちながら、ネットワークのチャネル数を制限します。さらに、スパース下でのマッチングを選択できる設計となっており、ナビゲーションやARなどのアプリケーションに適しています。XFeatは、高速かつ同等以上の精度を実現し、一般的なラップトップのCPU上でリアルタイムで動作します。
セル生産方式におけるロボットの活用には様々な問題があるが,その一つとして 3 体以上の物体の組み立てが挙げられる.一般に,複数物体を同時に組み立てる際は,対象の部品をそれぞれロボットアームまたは治具でそれぞれ独立に保持することで組み立てを遂行すると考えられる.ただし,この方法ではロボットアームや治具を部品数と同じ数だけ必要とし,部品数が多いほどコスト面や設置スペースの関係で無駄が多くなる.この課題に対して音𣷓らは組み立て対象物に働く接触力等の解析により,治具等で固定されていない対象物が組み立て作業中に運動しにくい状態となる条件を求めた.すなわち,環境中の非把持対象物のロバスト性を考慮して,組み立て作業条件を検討している.本研究ではこの方策に基づいて,複数物体の組み立て作業を単腕マニピュレータで実行することを目的とする.このとき,対象物のロバスト性を考慮することで,仮組状態の複数物体を同時に扱う手法を提案する.作業対象としてパイプジョイントの組み立てを挙げ,簡易な道具を用いることで単腕マニピュレータで複数物体を同時に把持できることを示す.さらに,作業成功率の向上のために RGB-D カメラを用いた物体の位置検出に基づくロボット制御及び動作計画を実装する.
This paper discusses assembly operations using a single manipulator and a parallel gripper to simultaneously
grasp multiple objects and hold the group of temporarily assembled objects. Multiple robots and jigs generally operate
assembly tasks by constraining the target objects mechanically or geometrically to prevent them from moving. It is
necessary to analyze the physical interaction between the objects for such constraints to achieve the tasks with a single
gripper. In this paper, we focus on assembling pipe joints as an example and discuss constraining the motion of the
objects. Our demonstration shows that a simple tool can facilitate holding multiple objects with a single gripper.
1. ~ dotnetConf 2016 Japan ~
.NET Coreとツール類の今
五十嵐 祐貴(いがらし ゆうき) @bonprosoft
Microsoft Student Partners Fellow, Microsoft MVP
サトヤ仙台
2. 自己紹介
五十嵐 祐貴 (いがらし ゆうき) @bonprosoft
Microsoft Student Partners Fellow
Microsoft MVP for Visual Studio and Development Technologies
東北大学工学部 / サトヤ仙台代表 / セキュリティ・キャンプ
http://vbcpp.net/about/
7. .NET Core SDK + .NET Command Line Interface tools
> dotnet
※ https://github.com/dotnet/cli/tree/rel/1.0.0/src/dotnet/commands
o アプリケーションの実行
> dotnet example.dll
o アプリケーションの開発(要SDK)
new 新規プロジェクトの作成
restore プロジェクトに必要なパッケージの復元
build/run プロジェクトをビルド
test ユニットテストを実行
pack NuGetパッケージとしてパッケージング
publish 発行用にファイルをまとめる
など[※]
8. 余談: .NET Core SDK Installerの中身
• WiXインストーラを展開
o dotnet-dev-win-x64.1.0.0-preview2-003121.msi
o dotnet-sharedframework-win-x64.1.0.0.msi
o dotnet-host-win-x64.1.0.1.msi
o dotnet-hostfxr-win-x64.1.0.1.msi
• さらにmsiも展開…
9. 余談: .NET Core SDK Installerの中身
o dotnet-dev-win-x64.1.0.0-preview2-003121.msi
dotnet.dll (dotnet [Command]の中身), csc.dll など
o dotnet-sharedframework-win-x64.1.0.0.msi
dotnet.dllなど動作させるのに必要な共有ライブラリ群
o dotnet-host-win-x64.1.0.1.msi
ランタイム本体
o dotnet-hostfxr-win-x64.1.0.1.msi
ランタイムを実行するために必要なライブラリ
10. .NET Coreで開発しようと思ったら…
.NET Core SDK with CLI
with Visual Studio Code
with Xamarin Studio
with Visual Studio
• 主に以下のツールが利用可能
o クロスプラットフォームで開発・デバッグが可能
12. Visual Studioを用いた.NET Coreアプリ開発
• Visual Studio 2015
o 現状はWindows上でのみ動作
o .NET Coreに対しても強力な開発支援を提供
o 無償版のCommunityエディションも公開
学生や個人開発者は従来の有償版機能を
無料で利用可能に
• 導入方法
1. Visual Studio Update 3を適用
2. .NET Core 1.0 for Visual Studio をインストール
https://go.microsoft.com/fwlink/?LinkId=817245
13. Dockerとは
• コンテナ型のアプリケーション仮想化技術
o コンテナ同士は独立
o サーバー仮想化とは異なり、OSカーネル等は共有
o Dockerfileに依存関係や構成を記述
⇒ 高速かつオーバーヘッドの少ないデプロイ・移行が可能
画像は http://patg.net/containers,virtualization,docker/2014/06/05/docker-intro/ より
15. Dockerとは
• WindowsにおけるDockerの利用
o 外部のDockerホスト(Linux)に接続
o Docker for Windows (Public beta)
Hyper-V上にDockerホストとなるLinuxマシンを配置し接続
o Docker Toolbox
VirtualBox上にDockerホストとなるLinuxマシンを配置し接続
o Windows Server Container
o Hyper-V Container
Linux
コンテナ
Windows系
コンテナ
22. Visual Studio Codeを用いた.NET Coreアプリ開発
• C# extension
o .NET Core向けの開発支援・デバッグ用拡張機能
IntelliSense, 定義へ移動, すべての参照を検索 など…
o 内部のエンジンにはOmniSharpを採用
https://marketplace.visualstudio.com/items?itemName=ms-vscode.csharp
> ext install csharp
.csprojの読み込みが一時的に無効状態(OS XとLinuxのみ)
⇒ OS X / Linux上でのMono / Unityアプリケーションの開発には
“Legacy C# Support extension”を使いましょう(公式アナウンス)
なお、両方の拡張機能の共存は不可能
23. Yeoman / Yeoman generator for ASP.NET Core
> yo aspnet
• .NET Core向けテンプレート生成ツール
o クロスプラットフォームで動作
o 様々な種類のプロジェクトテンプレートの作成が可能
o Sub Generatorを用いるとクラス単位での生成も可能
• 導入方法
1. Node.jsをインストール https://nodejs.org/en/
2. Yeomanをインストール npm install –g yo
3. Bowerをインストール npm install –g bower
4. ASP.NET Coreのジェネレーターをインストール
npm install –g generator-aspnet
26. dotnet new vs. yo aspnet
Q. yo aspnet ってなくなるんですか?
A. いや、そんなことはない。
新しいテンプレートツールを作って、
VSや dotnet new / yo aspnet などで
利用可能にしたい。(超意訳)
https://github.com/dotnet/cli/issues/2052#issuecomment-207031714
27. Demo
.NET Core Development with Visual Studio Code
Yeoman Generator for ASP.NET Core
28. Xamarin Studioを用いた.NET Coreアプリ開発
• Xamarin Studio
o Macで動作する.NET/Xamarinをターゲットとした
統合開発環境
o 現在はWindows版は提供されていない
• 導入方法
1. アドイン リポジトリ管理でAlpha channelを有効化
2. Add-in ManagerでDNXをインストール